/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/nla-digbench-scaling/bresenham-ll_valuebound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 23:53:31,321 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 23:53:31,322 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 23:53:31,343 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 23:53:31,345 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 23:53:31,346 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 23:53:31,351 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 23:53:31,355 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 23:53:31,356 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 23:53:31,359 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 23:53:31,360 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 23:53:31,360 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 23:53:31,361 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 23:53:31,361 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 23:53:31,362 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 23:53:31,362 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 23:53:31,362 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 23:53:31,363 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 23:53:31,364 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 23:53:31,365 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 23:53:31,365 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 23:53:31,367 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 23:53:31,369 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 23:53:31,370 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 23:53:31,370 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 23:53:31,378 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 23:53:31,378 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 23:53:31,379 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 23:53:31,379 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 23:53:31,380 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 23:53:31,381 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 23:53:31,381 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 23:53:31,382 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 23:53:31,382 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 23:53:31,382 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 23:53:31,383 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 23:53:31,383 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 23:53:31,384 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 23:53:31,384 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 23:53:31,384 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 23:53:31,384 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 23:53:31,386 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 23:53:31,387 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-07 23:53:31,407 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 23:53:31,407 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 23:53:31,408 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-07 23:53:31,408 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-07 23:53:31,409 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-07 23:53:31,409 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-07 23:53:31,409 INFO L138 SettingsManager]: * Use SBE=true [2022-04-07 23:53:31,409 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 23:53:31,409 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 23:53:31,410 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 23:53:31,410 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 23:53:31,410 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 23:53:31,410 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 23:53:31,410 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 23:53:31,410 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 23:53:31,410 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 23:53:31,411 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 23:53:31,411 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 23:53:31,411 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 23:53:31,411 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 23:53:31,411 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 23:53:31,411 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-07 23:53:31,411 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-07 23:53:31,411 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 23:53:31,412 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-07 23:53:31,412 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-07 23:53:31,412 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-07 23:53:31,412 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-07 23:53:31,412 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 23:53:31,412 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-07 23:53:31,623 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 23:53:31,650 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 23:53:31,651 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 23:53:31,652 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 23:53:31,653 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 23:53:31,653 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c [2022-04-07 23:53:31,693 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/09b26d33e/ae7fde94303147c690b587b66f6d8e7c/FLAGa574f9741 [2022-04-07 23:53:32,063 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 23:53:32,063 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c [2022-04-07 23:53:32,068 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/09b26d33e/ae7fde94303147c690b587b66f6d8e7c/FLAGa574f9741 [2022-04-07 23:53:32,486 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/09b26d33e/ae7fde94303147c690b587b66f6d8e7c [2022-04-07 23:53:32,488 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 23:53:32,489 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 23:53:32,490 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 23:53:32,490 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 23:53:32,493 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 23:53:32,494 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 11:53:32" (1/1) ... [2022-04-07 23:53:32,494 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@961a034 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:53:32, skipping insertion in model container [2022-04-07 23:53:32,495 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 11:53:32" (1/1) ... [2022-04-07 23:53:32,498 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 23:53:32,508 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 23:53:32,610 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c[597,610] [2022-04-07 23:53:32,626 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 23:53:32,639 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 23:53:32,646 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c[597,610] [2022-04-07 23:53:32,661 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 23:53:32,669 INFO L208 MainTranslator]: Completed translation [2022-04-07 23:53:32,669 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:53:32 WrapperNode [2022-04-07 23:53:32,669 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 23:53:32,670 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 23:53:32,670 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 23:53:32,670 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 23:53:32,689 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:53:32" (1/1) ... [2022-04-07 23:53:32,689 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:53:32" (1/1) ... [2022-04-07 23:53:32,693 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:53:32" (1/1) ... [2022-04-07 23:53:32,693 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:53:32" (1/1) ... [2022-04-07 23:53:32,714 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:53:32" (1/1) ... [2022-04-07 23:53:32,721 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:53:32" (1/1) ... [2022-04-07 23:53:32,722 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:53:32" (1/1) ... [2022-04-07 23:53:32,723 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 23:53:32,724 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 23:53:32,724 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 23:53:32,724 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 23:53:32,724 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:53:32" (1/1) ... [2022-04-07 23:53:32,741 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 23:53:32,747 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:53:32,759 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-07 23:53:32,764 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-07 23:53:32,809 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 23:53:32,809 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 23:53:32,809 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 23:53:32,809 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 23:53:32,810 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 23:53:32,810 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 23:53:32,810 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 23:53:32,811 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 23:53:32,867 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 23:53:32,868 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 23:53:33,087 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 23:53:33,091 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 23:53:33,091 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-07 23:53:33,107 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 11:53:33 BoogieIcfgContainer [2022-04-07 23:53:33,108 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 23:53:33,108 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 23:53:33,108 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 23:53:33,109 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 23:53:33,111 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 11:53:33" (1/1) ... [2022-04-07 23:53:33,112 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-07 23:53:33,142 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 11:53:33 BasicIcfg [2022-04-07 23:53:33,142 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 23:53:33,143 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 23:53:33,143 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 23:53:33,148 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 23:53:33,149 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 11:53:32" (1/4) ... [2022-04-07 23:53:33,149 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@285ccf10 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 11:53:33, skipping insertion in model container [2022-04-07 23:53:33,149 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:53:32" (2/4) ... [2022-04-07 23:53:33,149 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@285ccf10 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 11:53:33, skipping insertion in model container [2022-04-07 23:53:33,150 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 11:53:33" (3/4) ... [2022-04-07 23:53:33,150 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@285ccf10 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 11:53:33, skipping insertion in model container [2022-04-07 23:53:33,150 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 11:53:33" (4/4) ... [2022-04-07 23:53:33,151 INFO L111 eAbstractionObserver]: Analyzing ICFG bresenham-ll_valuebound20.cqvasr [2022-04-07 23:53:33,154 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-07 23:53:33,154 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 23:53:33,179 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 23:53:33,183 INFO L340 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 [2022-04-07 23:53:33,183 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 23:53:33,208 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 23:53:33,211 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-07 23:53:33,211 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:53:33,212 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 23:53:33,212 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:53:33,215 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:53:33,215 INFO L85 PathProgramCache]: Analyzing trace with hash -1563578423, now seen corresponding path program 1 times [2022-04-07 23:53:33,222 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:53:33,222 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2029361849] [2022-04-07 23:53:33,222 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:53:33,223 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:53:33,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:33,315 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 23:53:33,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:33,327 INFO L290 TraceCheckUtils]: 0: Hoare triple {48#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35#true} is VALID [2022-04-07 23:53:33,327 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 23:53:33,327 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 23:53:33,327 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 23:53:33,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:33,333 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 23:53:33,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 23:53:33,334 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 23:53:33,334 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 23:53:33,334 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-07 23:53:33,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:33,339 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 23:53:33,339 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 23:53:33,339 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 23:53:33,340 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 23:53:33,340 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 23:53:33,341 INFO L290 TraceCheckUtils]: 1: Hoare triple {48#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35#true} is VALID [2022-04-07 23:53:33,341 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 23:53:33,341 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 23:53:33,341 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 23:53:33,341 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {35#true} is VALID [2022-04-07 23:53:33,342 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-07 23:53:33,342 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 23:53:33,342 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 23:53:33,342 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 23:53:33,343 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 23:53:33,343 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {36#false} is VALID [2022-04-07 23:53:33,343 INFO L272 TraceCheckUtils]: 12: Hoare triple {36#false} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-07 23:53:33,343 INFO L290 TraceCheckUtils]: 13: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 23:53:33,344 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 23:53:33,344 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 23:53:33,344 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {36#false} {36#false} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 23:53:33,344 INFO L290 TraceCheckUtils]: 17: Hoare triple {36#false} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {36#false} is VALID [2022-04-07 23:53:33,344 INFO L290 TraceCheckUtils]: 18: Hoare triple {36#false} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {36#false} is VALID [2022-04-07 23:53:33,345 INFO L272 TraceCheckUtils]: 19: Hoare triple {36#false} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {36#false} is VALID [2022-04-07 23:53:33,345 INFO L290 TraceCheckUtils]: 20: Hoare triple {36#false} [94] __VERIFIER_assertENTRY-->L14: 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] {36#false} is VALID [2022-04-07 23:53:33,345 INFO L290 TraceCheckUtils]: 21: Hoare triple {36#false} [98] L14-->L15: 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[] {36#false} is VALID [2022-04-07 23:53:33,345 INFO L290 TraceCheckUtils]: 22: Hoare triple {36#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 23:53:33,345 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-07 23:53:33,346 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:53:33,346 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2029361849] [2022-04-07 23:53:33,346 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2029361849] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 23:53:33,347 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 23:53:33,347 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 23:53:33,348 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [262928] [2022-04-07 23:53:33,348 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 23:53:33,351 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (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 23 [2022-04-07 23:53:33,352 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:53:33,354 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (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-07 23:53:33,372 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 23:53:33,372 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 23:53:33,372 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:53:33,384 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 23:53:33,385 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 23:53:33,386 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (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-07 23:53:33,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:33,463 INFO L93 Difference]: Finished difference Result 57 states and 74 transitions. [2022-04-07 23:53:33,463 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 23:53:33,463 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (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 23 [2022-04-07 23:53:33,463 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:53:33,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (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-07 23:53:33,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 74 transitions. [2022-04-07 23:53:33,473 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (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-07 23:53:33,482 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 74 transitions. [2022-04-07 23:53:33,482 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 74 transitions. [2022-04-07 23:53:33,563 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 23:53:33,570 INFO L225 Difference]: With dead ends: 57 [2022-04-07 23:53:33,570 INFO L226 Difference]: Without dead ends: 27 [2022-04-07 23:53:33,573 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 23:53:33,577 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 20 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 6 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 34 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 6 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 23:53:33,580 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 34 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 6 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 23:53:33,590 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-07 23:53:33,607 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-07 23:53:33,607 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:53:33,608 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 23:53:33,608 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 23:53:33,609 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 23:53:33,612 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:33,612 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-07 23:53:33,613 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-07 23:53:33,613 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:53:33,613 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:53:33,614 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-07 23:53:33,614 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-07 23:53:33,617 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:33,617 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-07 23:53:33,617 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-07 23:53:33,618 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:53:33,618 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:53:33,618 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:53:33,618 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:53:33,619 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 23:53:33,620 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-04-07 23:53:33,621 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 23 [2022-04-07 23:53:33,621 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:53:33,622 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-04-07 23:53:33,623 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (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-07 23:53:33,624 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-07 23:53:33,624 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-07 23:53:33,624 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:53:33,625 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 23:53:33,625 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 23:53:33,625 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:53:33,626 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:53:33,626 INFO L85 PathProgramCache]: Analyzing trace with hash -1863481077, now seen corresponding path program 1 times [2022-04-07 23:53:33,626 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:53:33,626 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [824075079] [2022-04-07 23:53:33,627 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:53:33,627 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:53:33,655 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:53:33,656 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1849603834] [2022-04-07 23:53:33,656 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:53:33,656 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:53:33,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:53:33,657 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-07 23:53:33,687 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-07 23:53:33,748 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:33,750 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-07 23:53:33,771 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:33,775 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:53:33,924 INFO L272 TraceCheckUtils]: 0: Hoare triple {217#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {217#true} is VALID [2022-04-07 23:53:33,924 INFO L290 TraceCheckUtils]: 1: Hoare triple {217#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {217#true} is VALID [2022-04-07 23:53:33,925 INFO L290 TraceCheckUtils]: 2: Hoare triple {217#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {217#true} is VALID [2022-04-07 23:53:33,925 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {217#true} {217#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {217#true} is VALID [2022-04-07 23:53:33,925 INFO L272 TraceCheckUtils]: 4: Hoare triple {217#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {217#true} is VALID [2022-04-07 23:53:33,925 INFO L290 TraceCheckUtils]: 5: Hoare triple {217#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {217#true} is VALID [2022-04-07 23:53:33,925 INFO L272 TraceCheckUtils]: 6: Hoare triple {217#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {217#true} is VALID [2022-04-07 23:53:33,925 INFO L290 TraceCheckUtils]: 7: Hoare triple {217#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {217#true} is VALID [2022-04-07 23:53:33,926 INFO L290 TraceCheckUtils]: 8: Hoare triple {217#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {217#true} is VALID [2022-04-07 23:53:33,926 INFO L290 TraceCheckUtils]: 9: Hoare triple {217#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {217#true} is VALID [2022-04-07 23:53:33,926 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {217#true} {217#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {217#true} is VALID [2022-04-07 23:53:33,926 INFO L290 TraceCheckUtils]: 11: Hoare triple {217#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {217#true} is VALID [2022-04-07 23:53:33,926 INFO L272 TraceCheckUtils]: 12: Hoare triple {217#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {217#true} is VALID [2022-04-07 23:53:33,927 INFO L290 TraceCheckUtils]: 13: Hoare triple {217#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {217#true} is VALID [2022-04-07 23:53:33,927 INFO L290 TraceCheckUtils]: 14: Hoare triple {217#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {217#true} is VALID [2022-04-07 23:53:33,927 INFO L290 TraceCheckUtils]: 15: Hoare triple {217#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {217#true} is VALID [2022-04-07 23:53:33,927 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {217#true} {217#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {217#true} is VALID [2022-04-07 23:53:33,928 INFO L290 TraceCheckUtils]: 17: Hoare triple {217#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {273#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 23:53:33,928 INFO L290 TraceCheckUtils]: 18: Hoare triple {273#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {277#(and (= main_~xy~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~yx~0 0))} is VALID [2022-04-07 23:53:33,929 INFO L272 TraceCheckUtils]: 19: Hoare triple {277#(and (= main_~xy~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~yx~0 0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {281#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 23:53:33,930 INFO L290 TraceCheckUtils]: 20: Hoare triple {281#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: 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] {285#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:53:33,930 INFO L290 TraceCheckUtils]: 21: Hoare triple {285#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: 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[] {218#false} is VALID [2022-04-07 23:53:33,930 INFO L290 TraceCheckUtils]: 22: Hoare triple {218#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {218#false} is VALID [2022-04-07 23:53:33,931 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-07 23:53:33,931 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 23:53:33,931 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:53:33,931 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [824075079] [2022-04-07 23:53:33,931 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:53:33,931 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1849603834] [2022-04-07 23:53:33,931 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1849603834] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 23:53:33,931 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 23:53:33,932 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-07 23:53:33,932 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1528881959] [2022-04-07 23:53:33,932 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 23:53:33,933 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-07 23:53:33,933 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:53:33,933 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-07 23:53:33,947 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 23:53:33,947 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 23:53:33,947 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:53:33,948 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 23:53:33,948 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-07 23:53:33,948 INFO L87 Difference]: Start difference. First operand 27 states and 30 transitions. Second operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-07 23:53:34,125 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:34,125 INFO L93 Difference]: Finished difference Result 39 states and 44 transitions. [2022-04-07 23:53:34,125 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 23:53:34,126 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-07 23:53:34,126 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:53:34,126 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-07 23:53:34,130 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 44 transitions. [2022-04-07 23:53:34,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-07 23:53:34,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 44 transitions. [2022-04-07 23:53:34,133 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 44 transitions. [2022-04-07 23:53:34,167 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 23:53:34,169 INFO L225 Difference]: With dead ends: 39 [2022-04-07 23:53:34,169 INFO L226 Difference]: Without dead ends: 35 [2022-04-07 23:53:34,169 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-07 23:53:34,170 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 10 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 61 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 66 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 61 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 23:53:34,170 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 91 Invalid, 66 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 61 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 23:53:34,171 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-07 23:53:34,175 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 34. [2022-04-07 23:53:34,175 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:53:34,175 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 23:53:34,175 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 23:53:34,176 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 23:53:34,177 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:34,178 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-07 23:53:34,178 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-07 23:53:34,178 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:53:34,178 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:53:34,178 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 35 states. [2022-04-07 23:53:34,179 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 35 states. [2022-04-07 23:53:34,180 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:34,180 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-07 23:53:34,180 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-07 23:53:34,181 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:53:34,181 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:53:34,181 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:53:34,181 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:53:34,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 23:53:34,182 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 37 transitions. [2022-04-07 23:53:34,182 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 37 transitions. Word has length 23 [2022-04-07 23:53:34,182 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:53:34,183 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 37 transitions. [2022-04-07 23:53:34,183 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-07 23:53:34,183 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 37 transitions. [2022-04-07 23:53:34,183 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-07 23:53:34,183 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:53:34,184 INFO L499 BasicCegarLoop]: 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] [2022-04-07 23:53:34,227 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-07 23:53:34,400 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:53:34,400 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:53:34,400 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:53:34,401 INFO L85 PathProgramCache]: Analyzing trace with hash -646008129, now seen corresponding path program 1 times [2022-04-07 23:53:34,401 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:53:34,401 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2057934932] [2022-04-07 23:53:34,401 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:53:34,401 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:53:34,413 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:53:34,413 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2123954932] [2022-04-07 23:53:34,413 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:53:34,413 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:53:34,414 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:53:34,414 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-07 23:53:34,415 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-07 23:53:34,459 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:34,460 INFO L263 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-07 23:53:34,467 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:34,468 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:53:34,619 INFO L272 TraceCheckUtils]: 0: Hoare triple {467#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,619 INFO L290 TraceCheckUtils]: 1: Hoare triple {467#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {467#true} is VALID [2022-04-07 23:53:34,620 INFO L290 TraceCheckUtils]: 2: Hoare triple {467#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,620 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {467#true} {467#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,620 INFO L272 TraceCheckUtils]: 4: Hoare triple {467#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,620 INFO L290 TraceCheckUtils]: 5: Hoare triple {467#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {467#true} is VALID [2022-04-07 23:53:34,620 INFO L272 TraceCheckUtils]: 6: Hoare triple {467#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {467#true} is VALID [2022-04-07 23:53:34,620 INFO L290 TraceCheckUtils]: 7: Hoare triple {467#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {467#true} is VALID [2022-04-07 23:53:34,620 INFO L290 TraceCheckUtils]: 8: Hoare triple {467#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,620 INFO L290 TraceCheckUtils]: 9: Hoare triple {467#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,621 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {467#true} {467#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {467#true} is VALID [2022-04-07 23:53:34,621 INFO L290 TraceCheckUtils]: 11: Hoare triple {467#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {467#true} is VALID [2022-04-07 23:53:34,621 INFO L272 TraceCheckUtils]: 12: Hoare triple {467#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {467#true} is VALID [2022-04-07 23:53:34,621 INFO L290 TraceCheckUtils]: 13: Hoare triple {467#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {467#true} is VALID [2022-04-07 23:53:34,621 INFO L290 TraceCheckUtils]: 14: Hoare triple {467#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,621 INFO L290 TraceCheckUtils]: 15: Hoare triple {467#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,621 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {467#true} {467#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {467#true} is VALID [2022-04-07 23:53:34,622 INFO L290 TraceCheckUtils]: 17: Hoare triple {467#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {523#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 23:53:34,622 INFO L290 TraceCheckUtils]: 18: Hoare triple {523#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {523#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 23:53:34,622 INFO L272 TraceCheckUtils]: 19: Hoare triple {523#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {467#true} is VALID [2022-04-07 23:53:34,623 INFO L290 TraceCheckUtils]: 20: Hoare triple {467#true} [94] __VERIFIER_assertENTRY-->L14: 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] {467#true} is VALID [2022-04-07 23:53:34,623 INFO L290 TraceCheckUtils]: 21: Hoare triple {467#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,623 INFO L290 TraceCheckUtils]: 22: Hoare triple {467#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,624 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {467#true} {523#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {523#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 23:53:34,624 INFO L290 TraceCheckUtils]: 24: Hoare triple {523#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {523#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 23:53:34,625 INFO L290 TraceCheckUtils]: 25: Hoare triple {523#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {548#(and (= main_~x~0 0) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-07 23:53:34,625 INFO L290 TraceCheckUtils]: 26: Hoare triple {548#(and (= main_~x~0 0) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {552#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-07 23:53:34,626 INFO L290 TraceCheckUtils]: 27: Hoare triple {552#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {556#(and (= main_~xy~0 0) (= main_~Y~0 main_~yx~0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-07 23:53:34,626 INFO L272 TraceCheckUtils]: 28: Hoare triple {556#(and (= main_~xy~0 0) (= main_~Y~0 main_~yx~0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {560#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 23:53:34,627 INFO L290 TraceCheckUtils]: 29: Hoare triple {560#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: 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] {564#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:53:34,627 INFO L290 TraceCheckUtils]: 30: Hoare triple {564#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: 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[] {468#false} is VALID [2022-04-07 23:53:34,627 INFO L290 TraceCheckUtils]: 31: Hoare triple {468#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#false} is VALID [2022-04-07 23:53:34,628 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-07 23:53:34,628 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:53:34,769 INFO L290 TraceCheckUtils]: 31: Hoare triple {468#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#false} is VALID [2022-04-07 23:53:34,769 INFO L290 TraceCheckUtils]: 30: Hoare triple {564#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: 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[] {468#false} is VALID [2022-04-07 23:53:34,770 INFO L290 TraceCheckUtils]: 29: Hoare triple {560#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: 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] {564#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:53:34,770 INFO L272 TraceCheckUtils]: 28: Hoare triple {580#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {560#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 23:53:34,771 INFO L290 TraceCheckUtils]: 27: Hoare triple {584#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {580#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} is VALID [2022-04-07 23:53:34,772 INFO L290 TraceCheckUtils]: 26: Hoare triple {588#(= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {584#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 23:53:34,773 INFO L290 TraceCheckUtils]: 25: Hoare triple {584#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {588#(= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))} is VALID [2022-04-07 23:53:34,773 INFO L290 TraceCheckUtils]: 24: Hoare triple {584#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {584#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 23:53:34,774 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {467#true} {584#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {584#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 23:53:34,774 INFO L290 TraceCheckUtils]: 22: Hoare triple {467#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,774 INFO L290 TraceCheckUtils]: 21: Hoare triple {467#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,774 INFO L290 TraceCheckUtils]: 20: Hoare triple {467#true} [94] __VERIFIER_assertENTRY-->L14: 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] {467#true} is VALID [2022-04-07 23:53:34,774 INFO L272 TraceCheckUtils]: 19: Hoare triple {584#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {467#true} is VALID [2022-04-07 23:53:34,775 INFO L290 TraceCheckUtils]: 18: Hoare triple {584#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {584#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 23:53:34,775 INFO L290 TraceCheckUtils]: 17: Hoare triple {467#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {584#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 23:53:34,775 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {467#true} {467#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {467#true} is VALID [2022-04-07 23:53:34,776 INFO L290 TraceCheckUtils]: 15: Hoare triple {467#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,776 INFO L290 TraceCheckUtils]: 14: Hoare triple {467#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,776 INFO L290 TraceCheckUtils]: 13: Hoare triple {467#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {467#true} is VALID [2022-04-07 23:53:34,776 INFO L272 TraceCheckUtils]: 12: Hoare triple {467#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {467#true} is VALID [2022-04-07 23:53:34,776 INFO L290 TraceCheckUtils]: 11: Hoare triple {467#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {467#true} is VALID [2022-04-07 23:53:34,776 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {467#true} {467#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {467#true} is VALID [2022-04-07 23:53:34,776 INFO L290 TraceCheckUtils]: 9: Hoare triple {467#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,776 INFO L290 TraceCheckUtils]: 8: Hoare triple {467#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,777 INFO L290 TraceCheckUtils]: 7: Hoare triple {467#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {467#true} is VALID [2022-04-07 23:53:34,777 INFO L272 TraceCheckUtils]: 6: Hoare triple {467#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {467#true} is VALID [2022-04-07 23:53:34,777 INFO L290 TraceCheckUtils]: 5: Hoare triple {467#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {467#true} is VALID [2022-04-07 23:53:34,777 INFO L272 TraceCheckUtils]: 4: Hoare triple {467#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,777 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {467#true} {467#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,777 INFO L290 TraceCheckUtils]: 2: Hoare triple {467#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,777 INFO L290 TraceCheckUtils]: 1: Hoare triple {467#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {467#true} is VALID [2022-04-07 23:53:34,777 INFO L272 TraceCheckUtils]: 0: Hoare triple {467#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-07 23:53:34,777 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-07 23:53:34,778 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:53:34,778 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2057934932] [2022-04-07 23:53:34,778 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:53:34,778 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2123954932] [2022-04-07 23:53:34,778 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2123954932] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:53:34,778 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:53:34,778 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-07 23:53:34,778 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1748001026] [2022-04-07 23:53:34,778 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:53:34,779 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 32 [2022-04-07 23:53:34,779 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:53:34,779 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 23:53:34,809 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 23:53:34,809 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-07 23:53:34,809 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:53:34,809 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-07 23:53:34,809 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-07 23:53:34,809 INFO L87 Difference]: Start difference. First operand 34 states and 37 transitions. Second operand has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 23:53:35,329 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:35,329 INFO L93 Difference]: Finished difference Result 48 states and 54 transitions. [2022-04-07 23:53:35,329 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-07 23:53:35,330 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 32 [2022-04-07 23:53:35,330 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:53:35,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 23:53:35,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 51 transitions. [2022-04-07 23:53:35,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 23:53:35,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 51 transitions. [2022-04-07 23:53:35,333 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 51 transitions. [2022-04-07 23:53:35,375 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-07 23:53:35,377 INFO L225 Difference]: With dead ends: 48 [2022-04-07 23:53:35,378 INFO L226 Difference]: Without dead ends: 42 [2022-04-07 23:53:35,380 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 52 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=44, Invalid=166, Unknown=0, NotChecked=0, Total=210 [2022-04-07 23:53:35,380 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 14 mSDsluCounter, 114 mSDsCounter, 0 mSdLazyCounter, 166 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 166 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 23:53:35,381 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 135 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 166 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-07 23:53:35,381 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-04-07 23:53:35,386 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2022-04-07 23:53:35,386 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:53:35,386 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 23:53:35,386 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 23:53:35,387 INFO L87 Difference]: Start difference. First operand 42 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 23:53:35,388 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:35,388 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-07 23:53:35,388 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-07 23:53:35,388 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:53:35,388 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:53:35,389 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 42 states. [2022-04-07 23:53:35,389 INFO L87 Difference]: Start difference. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 42 states. [2022-04-07 23:53:35,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:35,390 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-07 23:53:35,390 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-07 23:53:35,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:53:35,391 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:53:35,391 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:53:35,391 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:53:35,391 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 23:53:35,392 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-07 23:53:35,392 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 32 [2022-04-07 23:53:35,400 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:53:35,400 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-07 23:53:35,401 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 23:53:35,401 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-07 23:53:35,401 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-07 23:53:35,401 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:53:35,401 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 23:53:35,417 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-07 23:53:35,617 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-07 23:53:35,618 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:53:35,618 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:53:35,618 INFO L85 PathProgramCache]: Analyzing trace with hash -1661983408, now seen corresponding path program 1 times [2022-04-07 23:53:35,618 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:53:35,619 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [97771773] [2022-04-07 23:53:35,619 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:53:35,619 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:53:35,636 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:53:35,636 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [67592003] [2022-04-07 23:53:35,636 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:53:35,636 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:53:35,636 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:53:35,639 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-07 23:53:35,640 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-07 23:53:35,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:35,677 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-07 23:53:35,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:35,689 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:53:36,030 INFO L272 TraceCheckUtils]: 0: Hoare triple {885#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,031 INFO L290 TraceCheckUtils]: 1: Hoare triple {885#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {885#true} is VALID [2022-04-07 23:53:36,031 INFO L290 TraceCheckUtils]: 2: Hoare triple {885#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,031 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {885#true} {885#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,031 INFO L272 TraceCheckUtils]: 4: Hoare triple {885#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,031 INFO L290 TraceCheckUtils]: 5: Hoare triple {885#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {885#true} is VALID [2022-04-07 23:53:36,031 INFO L272 TraceCheckUtils]: 6: Hoare triple {885#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {885#true} is VALID [2022-04-07 23:53:36,031 INFO L290 TraceCheckUtils]: 7: Hoare triple {885#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {885#true} is VALID [2022-04-07 23:53:36,031 INFO L290 TraceCheckUtils]: 8: Hoare triple {885#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,031 INFO L290 TraceCheckUtils]: 9: Hoare triple {885#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,032 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {885#true} {885#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {885#true} is VALID [2022-04-07 23:53:36,032 INFO L290 TraceCheckUtils]: 11: Hoare triple {885#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {885#true} is VALID [2022-04-07 23:53:36,032 INFO L272 TraceCheckUtils]: 12: Hoare triple {885#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {885#true} is VALID [2022-04-07 23:53:36,032 INFO L290 TraceCheckUtils]: 13: Hoare triple {885#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {885#true} is VALID [2022-04-07 23:53:36,032 INFO L290 TraceCheckUtils]: 14: Hoare triple {885#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,032 INFO L290 TraceCheckUtils]: 15: Hoare triple {885#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,032 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {885#true} {885#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {885#true} is VALID [2022-04-07 23:53:36,033 INFO L290 TraceCheckUtils]: 17: Hoare triple {885#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {941#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-07 23:53:36,033 INFO L290 TraceCheckUtils]: 18: Hoare triple {941#(and (= main_~x~0 0) (= main_~y~0 0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {941#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-07 23:53:36,033 INFO L272 TraceCheckUtils]: 19: Hoare triple {941#(and (= main_~x~0 0) (= main_~y~0 0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {885#true} is VALID [2022-04-07 23:53:36,033 INFO L290 TraceCheckUtils]: 20: Hoare triple {885#true} [94] __VERIFIER_assertENTRY-->L14: 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] {885#true} is VALID [2022-04-07 23:53:36,033 INFO L290 TraceCheckUtils]: 21: Hoare triple {885#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,033 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,034 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {885#true} {941#(and (= main_~x~0 0) (= main_~y~0 0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {941#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-07 23:53:36,034 INFO L290 TraceCheckUtils]: 24: Hoare triple {941#(and (= main_~x~0 0) (= main_~y~0 0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {963#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-07 23:53:36,035 INFO L290 TraceCheckUtils]: 25: Hoare triple {963#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {967#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 1))} is VALID [2022-04-07 23:53:36,035 INFO L290 TraceCheckUtils]: 26: Hoare triple {967#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 1))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {971#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-07 23:53:36,036 INFO L290 TraceCheckUtils]: 27: Hoare triple {971#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (<= main_~x~0 (+ main_~X~0 1)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {975#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-07 23:53:36,036 INFO L272 TraceCheckUtils]: 28: Hoare triple {975#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {885#true} is VALID [2022-04-07 23:53:36,036 INFO L290 TraceCheckUtils]: 29: Hoare triple {885#true} [94] __VERIFIER_assertENTRY-->L14: 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] {982#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:53:36,036 INFO L290 TraceCheckUtils]: 30: Hoare triple {982#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {986#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:53:36,037 INFO L290 TraceCheckUtils]: 31: Hoare triple {986#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {986#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:53:36,038 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {986#(not (= |__VERIFIER_assert_#in~cond| 0))} {975#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {993#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-07 23:53:36,038 INFO L290 TraceCheckUtils]: 33: Hoare triple {993#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (<= main_~x~0 (+ main_~X~0 1)))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {997#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (not (<= main_~x~0 main_~X~0)) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-07 23:53:36,040 INFO L290 TraceCheckUtils]: 34: Hoare triple {997#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (not (<= main_~x~0 main_~X~0)) (<= main_~x~0 (+ main_~X~0 1)))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1001#(and (not (<= 1 main_~X~0)) (= main_~y~0 main_~xy~0) (= main_~y~0 1) (<= 0 main_~X~0) (= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (* main_~Y~0 4)) (= main_~Y~0 main_~yx~0))} is VALID [2022-04-07 23:53:36,041 INFO L272 TraceCheckUtils]: 35: Hoare triple {1001#(and (not (<= 1 main_~X~0)) (= main_~y~0 main_~xy~0) (= main_~y~0 1) (<= 0 main_~X~0) (= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (* main_~Y~0 4)) (= main_~Y~0 main_~yx~0))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1005#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 23:53:36,041 INFO L290 TraceCheckUtils]: 36: Hoare triple {1005#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: 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] {1009#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:53:36,041 INFO L290 TraceCheckUtils]: 37: Hoare triple {1009#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: 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[] {886#false} is VALID [2022-04-07 23:53:36,041 INFO L290 TraceCheckUtils]: 38: Hoare triple {886#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#false} is VALID [2022-04-07 23:53:36,042 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-07 23:53:36,042 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:53:36,660 INFO L290 TraceCheckUtils]: 38: Hoare triple {886#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#false} is VALID [2022-04-07 23:53:36,661 INFO L290 TraceCheckUtils]: 37: Hoare triple {1009#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: 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[] {886#false} is VALID [2022-04-07 23:53:36,661 INFO L290 TraceCheckUtils]: 36: Hoare triple {1005#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: 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] {1009#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:53:36,663 INFO L272 TraceCheckUtils]: 35: Hoare triple {1025#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1005#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 23:53:36,663 INFO L290 TraceCheckUtils]: 34: Hoare triple {1029#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1025#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} is VALID [2022-04-07 23:53:36,664 INFO L290 TraceCheckUtils]: 33: Hoare triple {1033#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {1029#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-07 23:53:36,665 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {986#(not (= |__VERIFIER_assert_#in~cond| 0))} {1037#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1033#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is VALID [2022-04-07 23:53:36,665 INFO L290 TraceCheckUtils]: 31: Hoare triple {986#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {986#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:53:36,666 INFO L290 TraceCheckUtils]: 30: Hoare triple {1047#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {986#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:53:36,666 INFO L290 TraceCheckUtils]: 29: Hoare triple {885#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1047#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 23:53:36,666 INFO L272 TraceCheckUtils]: 28: Hoare triple {1037#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {885#true} is VALID [2022-04-07 23:53:36,667 INFO L290 TraceCheckUtils]: 27: Hoare triple {1054#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1037#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is VALID [2022-04-07 23:53:36,668 INFO L290 TraceCheckUtils]: 26: Hoare triple {1058#(or (<= (+ main_~x~0 1) main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* (* (+ main_~x~0 1) main_~y~0) 2) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* (+ main_~x~0 1) main_~Y~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1054#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} is VALID [2022-04-07 23:53:36,670 INFO L290 TraceCheckUtils]: 25: Hoare triple {1062#(or (forall ((main_~Y~0 Int)) (= (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0)) (* 2 (* (+ main_~x~0 1) (+ main_~y~0 1))) (* (* main_~X~0 (+ main_~y~0 1)) (- 2))) (+ 2 (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))) (<= (+ main_~x~0 1) main_~X~0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {1058#(or (<= (+ main_~x~0 1) main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* (* (+ main_~x~0 1) main_~y~0) 2) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* (+ main_~x~0 1) main_~Y~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))))} is VALID [2022-04-07 23:53:36,671 INFO L290 TraceCheckUtils]: 24: Hoare triple {885#true} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1062#(or (forall ((main_~Y~0 Int)) (= (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0)) (* 2 (* (+ main_~x~0 1) (+ main_~y~0 1))) (* (* main_~X~0 (+ main_~y~0 1)) (- 2))) (+ 2 (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 23:53:36,671 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {885#true} {885#true} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {885#true} is VALID [2022-04-07 23:53:36,671 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,671 INFO L290 TraceCheckUtils]: 21: Hoare triple {885#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,672 INFO L290 TraceCheckUtils]: 20: Hoare triple {885#true} [94] __VERIFIER_assertENTRY-->L14: 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] {885#true} is VALID [2022-04-07 23:53:36,672 INFO L272 TraceCheckUtils]: 19: Hoare triple {885#true} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {885#true} is VALID [2022-04-07 23:53:36,672 INFO L290 TraceCheckUtils]: 18: Hoare triple {885#true} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {885#true} is VALID [2022-04-07 23:53:36,672 INFO L290 TraceCheckUtils]: 17: Hoare triple {885#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {885#true} is VALID [2022-04-07 23:53:36,672 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {885#true} {885#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {885#true} is VALID [2022-04-07 23:53:36,672 INFO L290 TraceCheckUtils]: 15: Hoare triple {885#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,672 INFO L290 TraceCheckUtils]: 14: Hoare triple {885#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,672 INFO L290 TraceCheckUtils]: 13: Hoare triple {885#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {885#true} is VALID [2022-04-07 23:53:36,672 INFO L272 TraceCheckUtils]: 12: Hoare triple {885#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {885#true} is VALID [2022-04-07 23:53:36,672 INFO L290 TraceCheckUtils]: 11: Hoare triple {885#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {885#true} is VALID [2022-04-07 23:53:36,673 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {885#true} {885#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {885#true} is VALID [2022-04-07 23:53:36,673 INFO L290 TraceCheckUtils]: 9: Hoare triple {885#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,673 INFO L290 TraceCheckUtils]: 8: Hoare triple {885#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,673 INFO L290 TraceCheckUtils]: 7: Hoare triple {885#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {885#true} is VALID [2022-04-07 23:53:36,673 INFO L272 TraceCheckUtils]: 6: Hoare triple {885#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {885#true} is VALID [2022-04-07 23:53:36,673 INFO L290 TraceCheckUtils]: 5: Hoare triple {885#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {885#true} is VALID [2022-04-07 23:53:36,673 INFO L272 TraceCheckUtils]: 4: Hoare triple {885#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,673 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {885#true} {885#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,673 INFO L290 TraceCheckUtils]: 2: Hoare triple {885#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,673 INFO L290 TraceCheckUtils]: 1: Hoare triple {885#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {885#true} is VALID [2022-04-07 23:53:36,673 INFO L272 TraceCheckUtils]: 0: Hoare triple {885#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-07 23:53:36,674 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 9 proven. 1 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-07 23:53:36,674 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:53:36,674 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [97771773] [2022-04-07 23:53:36,674 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:53:36,674 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [67592003] [2022-04-07 23:53:36,674 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [67592003] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:53:36,674 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:53:36,674 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 22 [2022-04-07 23:53:36,674 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [954049496] [2022-04-07 23:53:36,674 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:53:36,675 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 39 [2022-04-07 23:53:36,675 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:53:36,675 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 23:53:36,716 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-07 23:53:36,716 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-07 23:53:36,716 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:53:36,717 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-07 23:53:36,717 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-07 23:53:36,717 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 23:53:37,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:37,865 INFO L93 Difference]: Finished difference Result 60 states and 68 transitions. [2022-04-07 23:53:37,865 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-07 23:53:37,865 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 39 [2022-04-07 23:53:37,865 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:53:37,865 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 23:53:37,867 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 62 transitions. [2022-04-07 23:53:37,867 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 23:53:37,868 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 62 transitions. [2022-04-07 23:53:37,868 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 62 transitions. [2022-04-07 23:53:37,950 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 23:53:37,953 INFO L225 Difference]: With dead ends: 60 [2022-04-07 23:53:37,953 INFO L226 Difference]: Without dead ends: 52 [2022-04-07 23:53:37,955 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 93 GetRequests, 57 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 261 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=220, Invalid=1112, Unknown=0, NotChecked=0, Total=1332 [2022-04-07 23:53:37,957 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 28 mSDsluCounter, 202 mSDsCounter, 0 mSdLazyCounter, 254 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 222 SdHoareTripleChecker+Invalid, 377 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 254 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 98 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 23:53:37,958 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 222 Invalid, 377 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 254 Invalid, 0 Unknown, 98 Unchecked, 0.2s Time] [2022-04-07 23:53:37,959 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-07 23:53:37,978 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 41. [2022-04-07 23:53:37,978 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:53:37,978 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 23:53:37,979 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 23:53:37,979 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 23:53:37,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:37,984 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2022-04-07 23:53:37,984 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2022-04-07 23:53:37,985 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:53:37,985 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:53:37,985 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 52 states. [2022-04-07 23:53:37,986 INFO L87 Difference]: Start difference. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 52 states. [2022-04-07 23:53:37,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:53:37,994 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2022-04-07 23:53:37,994 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2022-04-07 23:53:37,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:53:37,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:53:37,995 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:53:37,995 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:53:37,995 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 23:53:37,996 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-07 23:53:37,996 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 39 [2022-04-07 23:53:37,996 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:53:37,996 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-07 23:53:37,996 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 23:53:37,996 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-07 23:53:37,997 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-07 23:53:37,997 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:53:37,997 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 23:53:38,013 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-07 23:53:38,213 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:53:38,214 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:53:38,214 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:53:38,214 INFO L85 PathProgramCache]: Analyzing trace with hash -1381917339, now seen corresponding path program 1 times [2022-04-07 23:53:38,214 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:53:38,214 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [842875338] [2022-04-07 23:53:38,214 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:53:38,214 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:53:38,262 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:53:38,263 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1512171927] [2022-04-07 23:53:38,263 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:53:38,263 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:53:38,263 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:53:38,264 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-07 23:53:38,265 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-07 23:53:38,301 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:38,302 INFO L263 TraceCheckSpWp]: Trace formula consists of 136 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-07 23:53:38,311 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:53:38,312 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:53:51,503 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:53:56,103 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:54:08,573 INFO L272 TraceCheckUtils]: 0: Hoare triple {1417#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:08,573 INFO L290 TraceCheckUtils]: 1: Hoare triple {1417#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1417#true} is VALID [2022-04-07 23:54:08,573 INFO L290 TraceCheckUtils]: 2: Hoare triple {1417#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:08,573 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1417#true} {1417#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:08,573 INFO L272 TraceCheckUtils]: 4: Hoare triple {1417#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L290 TraceCheckUtils]: 5: Hoare triple {1417#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L272 TraceCheckUtils]: 6: Hoare triple {1417#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L290 TraceCheckUtils]: 7: Hoare triple {1417#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L290 TraceCheckUtils]: 8: Hoare triple {1417#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L290 TraceCheckUtils]: 9: Hoare triple {1417#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1417#true} {1417#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L290 TraceCheckUtils]: 11: Hoare triple {1417#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L272 TraceCheckUtils]: 12: Hoare triple {1417#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L290 TraceCheckUtils]: 13: Hoare triple {1417#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L290 TraceCheckUtils]: 14: Hoare triple {1417#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L290 TraceCheckUtils]: 15: Hoare triple {1417#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:08,574 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1417#true} {1417#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1417#true} is VALID [2022-04-07 23:54:08,575 INFO L290 TraceCheckUtils]: 17: Hoare triple {1417#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:08,575 INFO L290 TraceCheckUtils]: 18: Hoare triple {1473#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:08,575 INFO L272 TraceCheckUtils]: 19: Hoare triple {1473#(= main_~y~0 0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1417#true} is VALID [2022-04-07 23:54:08,575 INFO L290 TraceCheckUtils]: 20: Hoare triple {1417#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1417#true} is VALID [2022-04-07 23:54:08,575 INFO L290 TraceCheckUtils]: 21: Hoare triple {1417#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:08,575 INFO L290 TraceCheckUtils]: 22: Hoare triple {1417#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:08,576 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1417#true} {1473#(= main_~y~0 0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:08,576 INFO L290 TraceCheckUtils]: 24: Hoare triple {1473#(= main_~y~0 0)} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:08,577 INFO L290 TraceCheckUtils]: 25: Hoare triple {1473#(= main_~y~0 0)} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:08,577 INFO L290 TraceCheckUtils]: 26: Hoare triple {1473#(= main_~y~0 0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:08,577 INFO L290 TraceCheckUtils]: 27: Hoare triple {1473#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:08,577 INFO L272 TraceCheckUtils]: 28: Hoare triple {1473#(= main_~y~0 0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1417#true} is VALID [2022-04-07 23:54:08,578 INFO L290 TraceCheckUtils]: 29: Hoare triple {1417#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1510#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:54:08,578 INFO L290 TraceCheckUtils]: 30: Hoare triple {1510#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:54:08,578 INFO L290 TraceCheckUtils]: 31: Hoare triple {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:54:08,579 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} {1473#(= main_~y~0 0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:08,579 INFO L290 TraceCheckUtils]: 33: Hoare triple {1473#(= main_~y~0 0)} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:08,579 INFO L290 TraceCheckUtils]: 34: Hoare triple {1473#(= main_~y~0 0)} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:08,580 INFO L290 TraceCheckUtils]: 35: Hoare triple {1473#(= main_~y~0 0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:08,580 INFO L290 TraceCheckUtils]: 36: Hoare triple {1473#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1533#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} is VALID [2022-04-07 23:54:08,580 INFO L272 TraceCheckUtils]: 37: Hoare triple {1533#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1417#true} is VALID [2022-04-07 23:54:08,581 INFO L290 TraceCheckUtils]: 38: Hoare triple {1417#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1510#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:54:08,581 INFO L290 TraceCheckUtils]: 39: Hoare triple {1510#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:54:08,581 INFO L290 TraceCheckUtils]: 40: Hoare triple {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:54:08,582 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} {1533#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1549#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} is VALID [2022-04-07 23:54:08,583 INFO L290 TraceCheckUtils]: 42: Hoare triple {1549#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {1549#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} is VALID [2022-04-07 23:54:10,584 WARN L290 TraceCheckUtils]: 43: Hoare triple {1549#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1556#(and (= main_~y~0 0) (or (and (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~xy~0 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)))) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} is UNKNOWN [2022-04-07 23:54:10,586 INFO L272 TraceCheckUtils]: 44: Hoare triple {1556#(and (= main_~y~0 0) (or (and (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~xy~0 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)))) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1560#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 23:54:10,587 INFO L290 TraceCheckUtils]: 45: Hoare triple {1560#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: 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] {1564#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:54:10,587 INFO L290 TraceCheckUtils]: 46: Hoare triple {1564#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: 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[] {1418#false} is VALID [2022-04-07 23:54:10,587 INFO L290 TraceCheckUtils]: 47: Hoare triple {1418#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1418#false} is VALID [2022-04-07 23:54:10,587 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 14 proven. 2 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2022-04-07 23:54:10,587 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:54:14,804 INFO L290 TraceCheckUtils]: 47: Hoare triple {1418#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1418#false} is VALID [2022-04-07 23:54:14,809 INFO L290 TraceCheckUtils]: 46: Hoare triple {1564#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: 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[] {1418#false} is VALID [2022-04-07 23:54:14,810 INFO L290 TraceCheckUtils]: 45: Hoare triple {1560#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: 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] {1564#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:54:14,811 INFO L272 TraceCheckUtils]: 44: Hoare triple {1580#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1560#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 23:54:14,812 INFO L290 TraceCheckUtils]: 43: Hoare triple {1584#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1580#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} is VALID [2022-04-07 23:54:14,812 INFO L290 TraceCheckUtils]: 42: Hoare triple {1584#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {1584#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-07 23:54:14,813 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} {1591#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1584#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-07 23:54:14,817 INFO L290 TraceCheckUtils]: 40: Hoare triple {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:54:14,819 INFO L290 TraceCheckUtils]: 39: Hoare triple {1601#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1514#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:54:14,820 INFO L290 TraceCheckUtils]: 38: Hoare triple {1417#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1601#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 23:54:14,820 INFO L272 TraceCheckUtils]: 37: Hoare triple {1591#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1417#true} is VALID [2022-04-07 23:54:14,821 INFO L290 TraceCheckUtils]: 36: Hoare triple {1473#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1591#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-07 23:54:14,821 INFO L290 TraceCheckUtils]: 35: Hoare triple {1473#(= main_~y~0 0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:14,821 INFO L290 TraceCheckUtils]: 34: Hoare triple {1473#(= main_~y~0 0)} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:14,822 INFO L290 TraceCheckUtils]: 33: Hoare triple {1473#(= main_~y~0 0)} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:14,822 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1417#true} {1473#(= main_~y~0 0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:14,822 INFO L290 TraceCheckUtils]: 31: Hoare triple {1417#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,822 INFO L290 TraceCheckUtils]: 30: Hoare triple {1417#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,822 INFO L290 TraceCheckUtils]: 29: Hoare triple {1417#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1417#true} is VALID [2022-04-07 23:54:14,822 INFO L272 TraceCheckUtils]: 28: Hoare triple {1473#(= main_~y~0 0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1417#true} is VALID [2022-04-07 23:54:14,823 INFO L290 TraceCheckUtils]: 27: Hoare triple {1473#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:14,824 INFO L290 TraceCheckUtils]: 26: Hoare triple {1473#(= main_~y~0 0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:14,824 INFO L290 TraceCheckUtils]: 25: Hoare triple {1473#(= main_~y~0 0)} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:14,825 INFO L290 TraceCheckUtils]: 24: Hoare triple {1473#(= main_~y~0 0)} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:14,825 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1417#true} {1473#(= main_~y~0 0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:14,825 INFO L290 TraceCheckUtils]: 22: Hoare triple {1417#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,825 INFO L290 TraceCheckUtils]: 21: Hoare triple {1417#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,825 INFO L290 TraceCheckUtils]: 20: Hoare triple {1417#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1417#true} is VALID [2022-04-07 23:54:14,825 INFO L272 TraceCheckUtils]: 19: Hoare triple {1473#(= main_~y~0 0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1417#true} is VALID [2022-04-07 23:54:14,826 INFO L290 TraceCheckUtils]: 18: Hoare triple {1473#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:14,826 INFO L290 TraceCheckUtils]: 17: Hoare triple {1417#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {1473#(= main_~y~0 0)} is VALID [2022-04-07 23:54:14,826 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1417#true} {1417#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1417#true} is VALID [2022-04-07 23:54:14,826 INFO L290 TraceCheckUtils]: 15: Hoare triple {1417#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,826 INFO L290 TraceCheckUtils]: 14: Hoare triple {1417#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,826 INFO L290 TraceCheckUtils]: 13: Hoare triple {1417#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1417#true} is VALID [2022-04-07 23:54:14,826 INFO L272 TraceCheckUtils]: 12: Hoare triple {1417#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1417#true} is VALID [2022-04-07 23:54:14,826 INFO L290 TraceCheckUtils]: 11: Hoare triple {1417#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {1417#true} is VALID [2022-04-07 23:54:14,826 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1417#true} {1417#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1417#true} is VALID [2022-04-07 23:54:14,827 INFO L290 TraceCheckUtils]: 9: Hoare triple {1417#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,827 INFO L290 TraceCheckUtils]: 8: Hoare triple {1417#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {1417#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1417#true} is VALID [2022-04-07 23:54:14,827 INFO L272 TraceCheckUtils]: 6: Hoare triple {1417#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1417#true} is VALID [2022-04-07 23:54:14,827 INFO L290 TraceCheckUtils]: 5: Hoare triple {1417#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1417#true} is VALID [2022-04-07 23:54:14,827 INFO L272 TraceCheckUtils]: 4: Hoare triple {1417#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,827 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1417#true} {1417#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,827 INFO L290 TraceCheckUtils]: 2: Hoare triple {1417#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,827 INFO L290 TraceCheckUtils]: 1: Hoare triple {1417#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1417#true} is VALID [2022-04-07 23:54:14,827 INFO L272 TraceCheckUtils]: 0: Hoare triple {1417#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-07 23:54:14,827 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 11 proven. 5 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2022-04-07 23:54:14,827 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:54:14,828 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [842875338] [2022-04-07 23:54:14,828 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:54:14,828 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1512171927] [2022-04-07 23:54:14,828 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1512171927] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:54:14,828 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:54:14,828 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-07 23:54:14,829 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [670658985] [2022-04-07 23:54:14,830 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:54:14,830 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 48 [2022-04-07 23:54:14,831 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:54:14,832 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 23:54:16,867 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 44 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 23:54:16,867 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-07 23:54:16,867 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:54:16,867 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-07 23:54:16,867 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=146, Unknown=1, NotChecked=0, Total=182 [2022-04-07 23:54:16,868 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 23:54:19,127 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:54:23,248 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:54:25,261 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:54:27,268 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:54:29,280 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:54:31,364 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:54:33,386 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:54:35,549 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:54:35,550 INFO L93 Difference]: Finished difference Result 56 states and 63 transitions. [2022-04-07 23:54:35,550 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 23:54:35,550 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 48 [2022-04-07 23:54:35,550 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:54:35,550 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 23:54:35,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 48 transitions. [2022-04-07 23:54:35,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 23:54:35,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 48 transitions. [2022-04-07 23:54:35,552 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 48 transitions. [2022-04-07 23:54:37,603 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 47 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 23:54:37,603 INFO L225 Difference]: With dead ends: 56 [2022-04-07 23:54:37,604 INFO L226 Difference]: Without dead ends: 50 [2022-04-07 23:54:37,604 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 81 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 6.3s TimeCoverageRelationStatistics Valid=66, Invalid=237, Unknown=3, NotChecked=0, Total=306 [2022-04-07 23:54:37,604 INFO L913 BasicCegarLoop]: 19 mSDtfsCounter, 25 mSDsluCounter, 114 mSDsCounter, 0 mSdLazyCounter, 142 mSolverCounterSat, 13 mSolverCounterUnsat, 7 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 14.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 133 SdHoareTripleChecker+Invalid, 162 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 142 IncrementalHoareTripleChecker+Invalid, 7 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 14.2s IncrementalHoareTripleChecker+Time [2022-04-07 23:54:37,604 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 133 Invalid, 162 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 142 Invalid, 7 Unknown, 0 Unchecked, 14.2s Time] [2022-04-07 23:54:37,605 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-07 23:54:37,617 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 44. [2022-04-07 23:54:37,617 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:54:37,617 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 23:54:37,618 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 23:54:37,618 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 23:54:37,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:54:37,622 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-07 23:54:37,622 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-07 23:54:37,622 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:54:37,622 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:54:37,622 INFO L74 IsIncluded]: Start isIncluded. First operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-07 23:54:37,622 INFO L87 Difference]: Start difference. First operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-07 23:54:37,624 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:54:37,624 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-07 23:54:37,624 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-07 23:54:37,624 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:54:37,624 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:54:37,624 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:54:37,624 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:54:37,624 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 23:54:37,625 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 49 transitions. [2022-04-07 23:54:37,625 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 49 transitions. Word has length 48 [2022-04-07 23:54:37,626 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:54:37,626 INFO L478 AbstractCegarLoop]: Abstraction has 44 states and 49 transitions. [2022-04-07 23:54:37,626 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 23:54:37,626 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 49 transitions. [2022-04-07 23:54:37,626 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-07 23:54:37,626 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:54:37,627 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 23:54:37,655 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-07 23:54:37,827 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:54:37,827 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:54:37,828 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:54:37,828 INFO L85 PathProgramCache]: Analyzing trace with hash -137152858, now seen corresponding path program 1 times [2022-04-07 23:54:37,828 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:54:37,828 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [512032036] [2022-04-07 23:54:37,828 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:54:37,828 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:54:37,857 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:54:37,857 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2005879504] [2022-04-07 23:54:37,857 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:54:37,857 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:54:37,857 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:54:37,868 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-07 23:54:37,869 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-07 23:54:37,913 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:54:37,914 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 23:54:37,929 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:54:37,930 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:54:40,887 INFO L272 TraceCheckUtils]: 0: Hoare triple {1968#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,887 INFO L290 TraceCheckUtils]: 1: Hoare triple {1968#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1968#true} is VALID [2022-04-07 23:54:40,887 INFO L290 TraceCheckUtils]: 2: Hoare triple {1968#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,887 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1968#true} {1968#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,887 INFO L272 TraceCheckUtils]: 4: Hoare triple {1968#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,887 INFO L290 TraceCheckUtils]: 5: Hoare triple {1968#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1968#true} is VALID [2022-04-07 23:54:40,887 INFO L272 TraceCheckUtils]: 6: Hoare triple {1968#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1968#true} is VALID [2022-04-07 23:54:40,888 INFO L290 TraceCheckUtils]: 7: Hoare triple {1968#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1968#true} is VALID [2022-04-07 23:54:40,888 INFO L290 TraceCheckUtils]: 8: Hoare triple {1968#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,888 INFO L290 TraceCheckUtils]: 9: Hoare triple {1968#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,888 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1968#true} {1968#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1968#true} is VALID [2022-04-07 23:54:40,888 INFO L290 TraceCheckUtils]: 11: Hoare triple {1968#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {1968#true} is VALID [2022-04-07 23:54:40,888 INFO L272 TraceCheckUtils]: 12: Hoare triple {1968#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1968#true} is VALID [2022-04-07 23:54:40,888 INFO L290 TraceCheckUtils]: 13: Hoare triple {1968#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1968#true} is VALID [2022-04-07 23:54:40,888 INFO L290 TraceCheckUtils]: 14: Hoare triple {1968#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,888 INFO L290 TraceCheckUtils]: 15: Hoare triple {1968#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,888 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1968#true} {1968#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1968#true} is VALID [2022-04-07 23:54:40,889 INFO L290 TraceCheckUtils]: 17: Hoare triple {1968#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {2024#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-07 23:54:40,889 INFO L290 TraceCheckUtils]: 18: Hoare triple {2024#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2024#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-07 23:54:40,890 INFO L272 TraceCheckUtils]: 19: Hoare triple {2024#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1968#true} is VALID [2022-04-07 23:54:40,890 INFO L290 TraceCheckUtils]: 20: Hoare triple {1968#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1968#true} is VALID [2022-04-07 23:54:40,890 INFO L290 TraceCheckUtils]: 21: Hoare triple {1968#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,890 INFO L290 TraceCheckUtils]: 22: Hoare triple {1968#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,890 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1968#true} {2024#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2024#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-07 23:54:40,891 INFO L290 TraceCheckUtils]: 24: Hoare triple {2024#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2024#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-07 23:54:40,892 INFO L290 TraceCheckUtils]: 25: Hoare triple {2024#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {2049#(and (<= main_~x~0 0) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-07 23:54:40,892 INFO L290 TraceCheckUtils]: 26: Hoare triple {2049#(and (<= main_~x~0 0) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2053#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-07 23:54:40,893 INFO L290 TraceCheckUtils]: 27: Hoare triple {2053#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2053#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-07 23:54:40,893 INFO L272 TraceCheckUtils]: 28: Hoare triple {2053#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1968#true} is VALID [2022-04-07 23:54:40,893 INFO L290 TraceCheckUtils]: 29: Hoare triple {1968#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1968#true} is VALID [2022-04-07 23:54:40,893 INFO L290 TraceCheckUtils]: 30: Hoare triple {1968#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,893 INFO L290 TraceCheckUtils]: 31: Hoare triple {1968#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,894 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1968#true} {2053#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2053#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-07 23:54:40,894 INFO L290 TraceCheckUtils]: 33: Hoare triple {2053#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2053#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-07 23:54:40,895 INFO L290 TraceCheckUtils]: 34: Hoare triple {2053#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2078#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} is VALID [2022-04-07 23:54:40,895 INFO L290 TraceCheckUtils]: 35: Hoare triple {2078#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2082#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-07 23:54:40,896 INFO L290 TraceCheckUtils]: 36: Hoare triple {2082#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2082#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-07 23:54:40,896 INFO L272 TraceCheckUtils]: 37: Hoare triple {2082#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1968#true} is VALID [2022-04-07 23:54:40,896 INFO L290 TraceCheckUtils]: 38: Hoare triple {1968#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1968#true} is VALID [2022-04-07 23:54:40,896 INFO L290 TraceCheckUtils]: 39: Hoare triple {1968#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,896 INFO L290 TraceCheckUtils]: 40: Hoare triple {1968#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:40,897 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1968#true} {2082#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2082#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-07 23:54:40,898 INFO L290 TraceCheckUtils]: 42: Hoare triple {2082#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {1969#false} is VALID [2022-04-07 23:54:40,898 INFO L290 TraceCheckUtils]: 43: Hoare triple {1969#false} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1969#false} is VALID [2022-04-07 23:54:40,898 INFO L272 TraceCheckUtils]: 44: Hoare triple {1969#false} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1969#false} is VALID [2022-04-07 23:54:40,898 INFO L290 TraceCheckUtils]: 45: Hoare triple {1969#false} [94] __VERIFIER_assertENTRY-->L14: 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] {1969#false} is VALID [2022-04-07 23:54:40,898 INFO L290 TraceCheckUtils]: 46: Hoare triple {1969#false} [98] L14-->L15: 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[] {1969#false} is VALID [2022-04-07 23:54:40,898 INFO L290 TraceCheckUtils]: 47: Hoare triple {1969#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1969#false} is VALID [2022-04-07 23:54:40,899 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 6 proven. 11 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-07 23:54:40,899 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:54:41,184 INFO L290 TraceCheckUtils]: 47: Hoare triple {1969#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1969#false} is VALID [2022-04-07 23:54:41,184 INFO L290 TraceCheckUtils]: 46: Hoare triple {1969#false} [98] L14-->L15: 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[] {1969#false} is VALID [2022-04-07 23:54:41,184 INFO L290 TraceCheckUtils]: 45: Hoare triple {1969#false} [94] __VERIFIER_assertENTRY-->L14: 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] {1969#false} is VALID [2022-04-07 23:54:41,184 INFO L272 TraceCheckUtils]: 44: Hoare triple {1969#false} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1969#false} is VALID [2022-04-07 23:54:41,184 INFO L290 TraceCheckUtils]: 43: Hoare triple {1969#false} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1969#false} is VALID [2022-04-07 23:54:41,185 INFO L290 TraceCheckUtils]: 42: Hoare triple {2134#(<= main_~x~0 main_~X~0)} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {1969#false} is VALID [2022-04-07 23:54:41,185 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1968#true} {2134#(<= main_~x~0 main_~X~0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2134#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 23:54:41,185 INFO L290 TraceCheckUtils]: 40: Hoare triple {1968#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,185 INFO L290 TraceCheckUtils]: 39: Hoare triple {1968#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,186 INFO L290 TraceCheckUtils]: 38: Hoare triple {1968#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1968#true} is VALID [2022-04-07 23:54:41,186 INFO L272 TraceCheckUtils]: 37: Hoare triple {2134#(<= main_~x~0 main_~X~0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1968#true} is VALID [2022-04-07 23:54:41,186 INFO L290 TraceCheckUtils]: 36: Hoare triple {2134#(<= main_~x~0 main_~X~0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2134#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 23:54:41,186 INFO L290 TraceCheckUtils]: 35: Hoare triple {2156#(<= (+ main_~x~0 1) main_~X~0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2134#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 23:54:41,187 INFO L290 TraceCheckUtils]: 34: Hoare triple {2160#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2156#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 23:54:41,187 INFO L290 TraceCheckUtils]: 33: Hoare triple {2160#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2160#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 23:54:41,188 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1968#true} {2160#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2160#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 23:54:41,188 INFO L290 TraceCheckUtils]: 31: Hoare triple {1968#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,188 INFO L290 TraceCheckUtils]: 30: Hoare triple {1968#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,188 INFO L290 TraceCheckUtils]: 29: Hoare triple {1968#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1968#true} is VALID [2022-04-07 23:54:41,188 INFO L272 TraceCheckUtils]: 28: Hoare triple {2160#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1968#true} is VALID [2022-04-07 23:54:41,188 INFO L290 TraceCheckUtils]: 27: Hoare triple {2160#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2160#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 23:54:41,189 INFO L290 TraceCheckUtils]: 26: Hoare triple {2185#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2160#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 23:54:41,190 INFO L290 TraceCheckUtils]: 25: Hoare triple {2189#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {2185#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} is VALID [2022-04-07 23:54:41,190 INFO L290 TraceCheckUtils]: 24: Hoare triple {2189#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2189#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-07 23:54:41,191 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1968#true} {2189#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2189#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-07 23:54:41,191 INFO L290 TraceCheckUtils]: 22: Hoare triple {1968#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,191 INFO L290 TraceCheckUtils]: 21: Hoare triple {1968#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,191 INFO L290 TraceCheckUtils]: 20: Hoare triple {1968#true} [94] __VERIFIER_assertENTRY-->L14: 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] {1968#true} is VALID [2022-04-07 23:54:41,191 INFO L272 TraceCheckUtils]: 19: Hoare triple {2189#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1968#true} is VALID [2022-04-07 23:54:41,191 INFO L290 TraceCheckUtils]: 18: Hoare triple {2189#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2189#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-07 23:54:41,192 INFO L290 TraceCheckUtils]: 17: Hoare triple {1968#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {2189#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-07 23:54:41,192 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1968#true} {1968#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1968#true} is VALID [2022-04-07 23:54:41,192 INFO L290 TraceCheckUtils]: 15: Hoare triple {1968#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,192 INFO L290 TraceCheckUtils]: 14: Hoare triple {1968#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,192 INFO L290 TraceCheckUtils]: 13: Hoare triple {1968#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1968#true} is VALID [2022-04-07 23:54:41,192 INFO L272 TraceCheckUtils]: 12: Hoare triple {1968#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1968#true} is VALID [2022-04-07 23:54:41,192 INFO L290 TraceCheckUtils]: 11: Hoare triple {1968#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {1968#true} is VALID [2022-04-07 23:54:41,192 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1968#true} {1968#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1968#true} is VALID [2022-04-07 23:54:41,192 INFO L290 TraceCheckUtils]: 9: Hoare triple {1968#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,192 INFO L290 TraceCheckUtils]: 8: Hoare triple {1968#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,193 INFO L290 TraceCheckUtils]: 7: Hoare triple {1968#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1968#true} is VALID [2022-04-07 23:54:41,193 INFO L272 TraceCheckUtils]: 6: Hoare triple {1968#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1968#true} is VALID [2022-04-07 23:54:41,193 INFO L290 TraceCheckUtils]: 5: Hoare triple {1968#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1968#true} is VALID [2022-04-07 23:54:41,193 INFO L272 TraceCheckUtils]: 4: Hoare triple {1968#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,193 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1968#true} {1968#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,193 INFO L290 TraceCheckUtils]: 2: Hoare triple {1968#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,193 INFO L290 TraceCheckUtils]: 1: Hoare triple {1968#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1968#true} is VALID [2022-04-07 23:54:41,193 INFO L272 TraceCheckUtils]: 0: Hoare triple {1968#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-07 23:54:41,193 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 6 proven. 11 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-07 23:54:41,193 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:54:41,193 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [512032036] [2022-04-07 23:54:41,193 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:54:41,193 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2005879504] [2022-04-07 23:54:41,194 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2005879504] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:54:41,194 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:54:41,194 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-07 23:54:41,194 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1797439325] [2022-04-07 23:54:41,194 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:54:41,194 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) Word has length 48 [2022-04-07 23:54:41,194 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:54:41,195 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-07 23:54:41,246 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 23:54:41,246 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-07 23:54:41,246 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:54:41,246 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-07 23:54:41,247 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-07 23:54:41,247 INFO L87 Difference]: Start difference. First operand 44 states and 49 transitions. Second operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-07 23:54:41,567 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:54:41,567 INFO L93 Difference]: Finished difference Result 65 states and 75 transitions. [2022-04-07 23:54:41,567 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 23:54:41,568 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) Word has length 48 [2022-04-07 23:54:41,568 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:54:41,568 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-07 23:54:41,569 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 58 transitions. [2022-04-07 23:54:41,569 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-07 23:54:41,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 58 transitions. [2022-04-07 23:54:41,570 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 58 transitions. [2022-04-07 23:54:41,610 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-07 23:54:41,611 INFO L225 Difference]: With dead ends: 65 [2022-04-07 23:54:41,611 INFO L226 Difference]: Without dead ends: 59 [2022-04-07 23:54:41,611 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 85 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=59, Invalid=181, Unknown=0, NotChecked=0, Total=240 [2022-04-07 23:54:41,611 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 5 mSDsluCounter, 68 mSDsCounter, 0 mSdLazyCounter, 116 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 99 SdHoareTripleChecker+Invalid, 129 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 116 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 23:54:41,612 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 99 Invalid, 129 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 116 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 23:54:41,612 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-04-07 23:54:41,653 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 51. [2022-04-07 23:54:41,653 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:54:41,653 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 23:54:41,653 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 23:54:41,654 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 23:54:41,655 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:54:41,655 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-07 23:54:41,655 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-07 23:54:41,656 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:54:41,656 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:54:41,656 INFO L74 IsIncluded]: Start isIncluded. First operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 59 states. [2022-04-07 23:54:41,657 INFO L87 Difference]: Start difference. First operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 59 states. [2022-04-07 23:54:41,660 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:54:41,660 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-07 23:54:41,660 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-07 23:54:41,660 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:54:41,660 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:54:41,660 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:54:41,661 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:54:41,661 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 23:54:41,665 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 59 transitions. [2022-04-07 23:54:41,665 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 59 transitions. Word has length 48 [2022-04-07 23:54:41,665 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:54:41,666 INFO L478 AbstractCegarLoop]: Abstraction has 51 states and 59 transitions. [2022-04-07 23:54:41,666 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-07 23:54:41,666 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 59 transitions. [2022-04-07 23:54:41,667 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-07 23:54:41,667 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:54:41,667 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 23:54:41,698 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-07 23:54:41,883 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:54:41,883 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:54:41,884 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:54:41,884 INFO L85 PathProgramCache]: Analyzing trace with hash -545218702, now seen corresponding path program 2 times [2022-04-07 23:54:41,884 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:54:41,884 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [18395186] [2022-04-07 23:54:41,884 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:54:41,884 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:54:41,899 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:54:41,900 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [120738405] [2022-04-07 23:54:41,900 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-07 23:54:41,900 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:54:41,900 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:54:41,901 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-07 23:54:41,901 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-07 23:54:41,939 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-07 23:54:41,939 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 23:54:41,939 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 23:54:41,948 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:54:41,949 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:54:42,788 INFO L272 TraceCheckUtils]: 0: Hoare triple {2555#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L290 TraceCheckUtils]: 1: Hoare triple {2555#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L290 TraceCheckUtils]: 2: Hoare triple {2555#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2555#true} {2555#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L272 TraceCheckUtils]: 4: Hoare triple {2555#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L290 TraceCheckUtils]: 5: Hoare triple {2555#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L272 TraceCheckUtils]: 6: Hoare triple {2555#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L290 TraceCheckUtils]: 7: Hoare triple {2555#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L290 TraceCheckUtils]: 8: Hoare triple {2555#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L290 TraceCheckUtils]: 9: Hoare triple {2555#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2555#true} {2555#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L290 TraceCheckUtils]: 11: Hoare triple {2555#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {2555#true} is VALID [2022-04-07 23:54:42,789 INFO L272 TraceCheckUtils]: 12: Hoare triple {2555#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2555#true} is VALID [2022-04-07 23:54:42,790 INFO L290 TraceCheckUtils]: 13: Hoare triple {2555#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2555#true} is VALID [2022-04-07 23:54:42,790 INFO L290 TraceCheckUtils]: 14: Hoare triple {2555#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,790 INFO L290 TraceCheckUtils]: 15: Hoare triple {2555#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,790 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2555#true} {2555#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2555#true} is VALID [2022-04-07 23:54:42,794 INFO L290 TraceCheckUtils]: 17: Hoare triple {2555#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {2611#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-07 23:54:42,794 INFO L290 TraceCheckUtils]: 18: Hoare triple {2611#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2611#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-07 23:54:42,794 INFO L272 TraceCheckUtils]: 19: Hoare triple {2611#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2555#true} is VALID [2022-04-07 23:54:42,794 INFO L290 TraceCheckUtils]: 20: Hoare triple {2555#true} [94] __VERIFIER_assertENTRY-->L14: 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] {2555#true} is VALID [2022-04-07 23:54:42,794 INFO L290 TraceCheckUtils]: 21: Hoare triple {2555#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,794 INFO L290 TraceCheckUtils]: 22: Hoare triple {2555#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,801 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2555#true} {2611#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2611#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-07 23:54:42,802 INFO L290 TraceCheckUtils]: 24: Hoare triple {2611#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2611#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-07 23:54:42,803 INFO L290 TraceCheckUtils]: 25: Hoare triple {2611#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2636#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 23:54:42,803 INFO L290 TraceCheckUtils]: 26: Hoare triple {2636#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2640#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 23:54:42,804 INFO L290 TraceCheckUtils]: 27: Hoare triple {2640#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2640#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 23:54:42,804 INFO L272 TraceCheckUtils]: 28: Hoare triple {2640#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2555#true} is VALID [2022-04-07 23:54:42,804 INFO L290 TraceCheckUtils]: 29: Hoare triple {2555#true} [94] __VERIFIER_assertENTRY-->L14: 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] {2555#true} is VALID [2022-04-07 23:54:42,804 INFO L290 TraceCheckUtils]: 30: Hoare triple {2555#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,804 INFO L290 TraceCheckUtils]: 31: Hoare triple {2555#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,805 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2555#true} {2640#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2640#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 23:54:42,805 INFO L290 TraceCheckUtils]: 33: Hoare triple {2640#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2640#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 23:54:42,806 INFO L290 TraceCheckUtils]: 34: Hoare triple {2640#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {2665#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 23:54:42,806 INFO L290 TraceCheckUtils]: 35: Hoare triple {2665#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2669#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 23:54:42,807 INFO L290 TraceCheckUtils]: 36: Hoare triple {2669#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2669#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 23:54:42,807 INFO L272 TraceCheckUtils]: 37: Hoare triple {2669#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2555#true} is VALID [2022-04-07 23:54:42,807 INFO L290 TraceCheckUtils]: 38: Hoare triple {2555#true} [94] __VERIFIER_assertENTRY-->L14: 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] {2555#true} is VALID [2022-04-07 23:54:42,807 INFO L290 TraceCheckUtils]: 39: Hoare triple {2555#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,807 INFO L290 TraceCheckUtils]: 40: Hoare triple {2555#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,808 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2555#true} {2669#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2669#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 23:54:42,808 INFO L290 TraceCheckUtils]: 42: Hoare triple {2669#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2669#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 23:54:42,809 INFO L290 TraceCheckUtils]: 43: Hoare triple {2669#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2669#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 23:54:42,809 INFO L290 TraceCheckUtils]: 44: Hoare triple {2669#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2697#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 23:54:42,809 INFO L290 TraceCheckUtils]: 45: Hoare triple {2697#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2697#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 23:54:42,810 INFO L272 TraceCheckUtils]: 46: Hoare triple {2697#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2555#true} is VALID [2022-04-07 23:54:42,810 INFO L290 TraceCheckUtils]: 47: Hoare triple {2555#true} [94] __VERIFIER_assertENTRY-->L14: 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] {2555#true} is VALID [2022-04-07 23:54:42,810 INFO L290 TraceCheckUtils]: 48: Hoare triple {2555#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,810 INFO L290 TraceCheckUtils]: 49: Hoare triple {2555#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:42,810 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2555#true} {2697#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2697#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 23:54:42,811 INFO L290 TraceCheckUtils]: 51: Hoare triple {2697#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {2556#false} is VALID [2022-04-07 23:54:42,811 INFO L290 TraceCheckUtils]: 52: Hoare triple {2556#false} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2556#false} is VALID [2022-04-07 23:54:42,811 INFO L272 TraceCheckUtils]: 53: Hoare triple {2556#false} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2556#false} is VALID [2022-04-07 23:54:42,811 INFO L290 TraceCheckUtils]: 54: Hoare triple {2556#false} [94] __VERIFIER_assertENTRY-->L14: 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] {2556#false} is VALID [2022-04-07 23:54:42,811 INFO L290 TraceCheckUtils]: 55: Hoare triple {2556#false} [98] L14-->L15: 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[] {2556#false} is VALID [2022-04-07 23:54:42,811 INFO L290 TraceCheckUtils]: 56: Hoare triple {2556#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2556#false} is VALID [2022-04-07 23:54:42,812 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 8 proven. 24 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-07 23:54:42,812 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:54:43,074 INFO L290 TraceCheckUtils]: 56: Hoare triple {2556#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2556#false} is VALID [2022-04-07 23:54:43,074 INFO L290 TraceCheckUtils]: 55: Hoare triple {2556#false} [98] L14-->L15: 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[] {2556#false} is VALID [2022-04-07 23:54:43,074 INFO L290 TraceCheckUtils]: 54: Hoare triple {2556#false} [94] __VERIFIER_assertENTRY-->L14: 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] {2556#false} is VALID [2022-04-07 23:54:43,074 INFO L272 TraceCheckUtils]: 53: Hoare triple {2556#false} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2556#false} is VALID [2022-04-07 23:54:43,074 INFO L290 TraceCheckUtils]: 52: Hoare triple {2556#false} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2556#false} is VALID [2022-04-07 23:54:43,074 INFO L290 TraceCheckUtils]: 51: Hoare triple {2749#(<= main_~x~0 main_~X~0)} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {2556#false} is VALID [2022-04-07 23:54:43,075 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2555#true} {2749#(<= main_~x~0 main_~X~0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2749#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 23:54:43,075 INFO L290 TraceCheckUtils]: 49: Hoare triple {2555#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,075 INFO L290 TraceCheckUtils]: 48: Hoare triple {2555#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,075 INFO L290 TraceCheckUtils]: 47: Hoare triple {2555#true} [94] __VERIFIER_assertENTRY-->L14: 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] {2555#true} is VALID [2022-04-07 23:54:43,075 INFO L272 TraceCheckUtils]: 46: Hoare triple {2749#(<= main_~x~0 main_~X~0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2555#true} is VALID [2022-04-07 23:54:43,075 INFO L290 TraceCheckUtils]: 45: Hoare triple {2749#(<= main_~x~0 main_~X~0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2749#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 23:54:43,076 INFO L290 TraceCheckUtils]: 44: Hoare triple {2771#(<= (+ main_~x~0 1) main_~X~0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2749#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 23:54:43,076 INFO L290 TraceCheckUtils]: 43: Hoare triple {2771#(<= (+ main_~x~0 1) main_~X~0)} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2771#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 23:54:43,076 INFO L290 TraceCheckUtils]: 42: Hoare triple {2771#(<= (+ main_~x~0 1) main_~X~0)} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2771#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 23:54:43,077 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2555#true} {2771#(<= (+ main_~x~0 1) main_~X~0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2771#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 23:54:43,077 INFO L290 TraceCheckUtils]: 40: Hoare triple {2555#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,077 INFO L290 TraceCheckUtils]: 39: Hoare triple {2555#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,077 INFO L290 TraceCheckUtils]: 38: Hoare triple {2555#true} [94] __VERIFIER_assertENTRY-->L14: 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] {2555#true} is VALID [2022-04-07 23:54:43,077 INFO L272 TraceCheckUtils]: 37: Hoare triple {2771#(<= (+ main_~x~0 1) main_~X~0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2555#true} is VALID [2022-04-07 23:54:43,077 INFO L290 TraceCheckUtils]: 36: Hoare triple {2771#(<= (+ main_~x~0 1) main_~X~0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2771#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 23:54:43,077 INFO L290 TraceCheckUtils]: 35: Hoare triple {2799#(<= (+ main_~x~0 2) main_~X~0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2771#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 23:54:43,078 INFO L290 TraceCheckUtils]: 34: Hoare triple {2803#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {2799#(<= (+ main_~x~0 2) main_~X~0)} is VALID [2022-04-07 23:54:43,078 INFO L290 TraceCheckUtils]: 33: Hoare triple {2803#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2803#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-07 23:54:43,078 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2555#true} {2803#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2803#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-07 23:54:43,078 INFO L290 TraceCheckUtils]: 31: Hoare triple {2555#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,078 INFO L290 TraceCheckUtils]: 30: Hoare triple {2555#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,079 INFO L290 TraceCheckUtils]: 29: Hoare triple {2555#true} [94] __VERIFIER_assertENTRY-->L14: 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] {2555#true} is VALID [2022-04-07 23:54:43,079 INFO L272 TraceCheckUtils]: 28: Hoare triple {2803#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2555#true} is VALID [2022-04-07 23:54:43,079 INFO L290 TraceCheckUtils]: 27: Hoare triple {2803#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2803#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-07 23:54:43,079 INFO L290 TraceCheckUtils]: 26: Hoare triple {2828#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2803#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-07 23:54:43,080 INFO L290 TraceCheckUtils]: 25: Hoare triple {2832#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2828#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-07 23:54:43,080 INFO L290 TraceCheckUtils]: 24: Hoare triple {2832#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2832#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-07 23:54:43,080 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2555#true} {2832#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2832#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-07 23:54:43,080 INFO L290 TraceCheckUtils]: 22: Hoare triple {2555#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,081 INFO L290 TraceCheckUtils]: 21: Hoare triple {2555#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,081 INFO L290 TraceCheckUtils]: 20: Hoare triple {2555#true} [94] __VERIFIER_assertENTRY-->L14: 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] {2555#true} is VALID [2022-04-07 23:54:43,081 INFO L272 TraceCheckUtils]: 19: Hoare triple {2832#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2555#true} is VALID [2022-04-07 23:54:43,081 INFO L290 TraceCheckUtils]: 18: Hoare triple {2832#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2832#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-07 23:54:43,081 INFO L290 TraceCheckUtils]: 17: Hoare triple {2555#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {2832#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-07 23:54:43,082 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2555#true} {2555#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L290 TraceCheckUtils]: 15: Hoare triple {2555#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L290 TraceCheckUtils]: 14: Hoare triple {2555#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L290 TraceCheckUtils]: 13: Hoare triple {2555#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L272 TraceCheckUtils]: 12: Hoare triple {2555#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L290 TraceCheckUtils]: 11: Hoare triple {2555#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2555#true} {2555#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L290 TraceCheckUtils]: 9: Hoare triple {2555#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L290 TraceCheckUtils]: 8: Hoare triple {2555#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L290 TraceCheckUtils]: 7: Hoare triple {2555#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L272 TraceCheckUtils]: 6: Hoare triple {2555#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L290 TraceCheckUtils]: 5: Hoare triple {2555#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L272 TraceCheckUtils]: 4: Hoare triple {2555#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,082 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2555#true} {2555#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,083 INFO L290 TraceCheckUtils]: 2: Hoare triple {2555#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,083 INFO L290 TraceCheckUtils]: 1: Hoare triple {2555#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2555#true} is VALID [2022-04-07 23:54:43,083 INFO L272 TraceCheckUtils]: 0: Hoare triple {2555#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-07 23:54:43,083 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 8 proven. 24 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-07 23:54:43,083 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:54:43,083 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [18395186] [2022-04-07 23:54:43,083 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:54:43,083 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [120738405] [2022-04-07 23:54:43,083 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [120738405] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:54:43,083 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:54:43,083 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-07 23:54:43,084 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [413081417] [2022-04-07 23:54:43,084 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:54:43,084 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) Word has length 57 [2022-04-07 23:54:43,084 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:54:43,085 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-07 23:54:43,119 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 23:54:43,120 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-07 23:54:43,120 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:54:43,120 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-07 23:54:43,120 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-04-07 23:54:43,120 INFO L87 Difference]: Start difference. First operand 51 states and 59 transitions. Second operand has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-07 23:54:43,681 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:54:43,682 INFO L93 Difference]: Finished difference Result 78 states and 93 transitions. [2022-04-07 23:54:43,682 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 23:54:43,682 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) Word has length 57 [2022-04-07 23:54:43,682 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:54:43,682 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-07 23:54:43,683 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 64 transitions. [2022-04-07 23:54:43,683 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-07 23:54:43,684 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 64 transitions. [2022-04-07 23:54:43,685 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 64 transitions. [2022-04-07 23:54:43,732 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-07 23:54:43,734 INFO L225 Difference]: With dead ends: 78 [2022-04-07 23:54:43,734 INFO L226 Difference]: Without dead ends: 72 [2022-04-07 23:54:43,734 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 101 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=64, Invalid=208, Unknown=0, NotChecked=0, Total=272 [2022-04-07 23:54:43,735 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 8 mSDsluCounter, 163 mSDsCounter, 0 mSdLazyCounter, 222 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 195 SdHoareTripleChecker+Invalid, 230 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 222 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 23:54:43,735 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 195 Invalid, 230 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 222 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-07 23:54:43,736 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states. [2022-04-07 23:54:43,765 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 56. [2022-04-07 23:54:43,765 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:54:43,766 INFO L82 GeneralOperation]: Start isEquivalent. First operand 72 states. Second operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 23:54:43,766 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 23:54:43,766 INFO L87 Difference]: Start difference. First operand 72 states. Second operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 23:54:43,768 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:54:43,768 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-07 23:54:43,768 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 87 transitions. [2022-04-07 23:54:43,768 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:54:43,768 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:54:43,768 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 72 states. [2022-04-07 23:54:43,769 INFO L87 Difference]: Start difference. First operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 72 states. [2022-04-07 23:54:43,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:54:43,771 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-07 23:54:43,771 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 87 transitions. [2022-04-07 23:54:43,771 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:54:43,771 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:54:43,771 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:54:43,771 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:54:43,771 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 23:54:43,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 66 transitions. [2022-04-07 23:54:43,772 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 66 transitions. Word has length 57 [2022-04-07 23:54:43,773 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:54:43,773 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 66 transitions. [2022-04-07 23:54:43,773 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-07 23:54:43,773 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 66 transitions. [2022-04-07 23:54:43,773 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-07 23:54:43,773 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:54:43,773 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 23:54:43,803 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-07 23:54:43,974 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:54:43,974 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:54:43,974 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:54:43,975 INFO L85 PathProgramCache]: Analyzing trace with hash 494880272, now seen corresponding path program 3 times [2022-04-07 23:54:43,975 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:54:43,975 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1976598054] [2022-04-07 23:54:43,975 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:54:43,975 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:54:43,985 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:54:43,985 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1125985426] [2022-04-07 23:54:43,985 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-07 23:54:43,985 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:54:43,985 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:54:44,004 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-07 23:54:44,037 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-07 23:54:44,298 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-07 23:54:44,298 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 23:54:44,300 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-07 23:54:44,319 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:54:44,320 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:55:06,241 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:55:14,320 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:55:20,338 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:56:26,250 INFO L272 TraceCheckUtils]: 0: Hoare triple {3248#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:56:26,250 INFO L290 TraceCheckUtils]: 1: Hoare triple {3248#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3248#true} is VALID [2022-04-07 23:56:26,250 INFO L290 TraceCheckUtils]: 2: Hoare triple {3248#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:56:26,250 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3248#true} {3248#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:56:26,250 INFO L272 TraceCheckUtils]: 4: Hoare triple {3248#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:56:26,253 INFO L290 TraceCheckUtils]: 5: Hoare triple {3248#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {3248#true} is VALID [2022-04-07 23:56:26,253 INFO L272 TraceCheckUtils]: 6: Hoare triple {3248#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {3248#true} is VALID [2022-04-07 23:56:26,253 INFO L290 TraceCheckUtils]: 7: Hoare triple {3248#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3274#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 23:56:26,253 INFO L290 TraceCheckUtils]: 8: Hoare triple {3274#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3278#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 23:56:26,253 INFO L290 TraceCheckUtils]: 9: Hoare triple {3278#(not (= |assume_abort_if_not_#in~cond| 0))} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3278#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 23:56:26,254 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3278#(not (= |assume_abort_if_not_#in~cond| 0))} {3248#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {3285#(and (<= main_~X~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,254 INFO L290 TraceCheckUtils]: 11: Hoare triple {3285#(and (<= main_~X~0 20) (<= 0 main_~X~0))} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {3285#(and (<= main_~X~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,254 INFO L272 TraceCheckUtils]: 12: Hoare triple {3285#(and (<= main_~X~0 20) (<= 0 main_~X~0))} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {3248#true} is VALID [2022-04-07 23:56:26,255 INFO L290 TraceCheckUtils]: 13: Hoare triple {3248#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3274#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 23:56:26,255 INFO L290 TraceCheckUtils]: 14: Hoare triple {3274#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3278#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 23:56:26,255 INFO L290 TraceCheckUtils]: 15: Hoare triple {3278#(not (= |assume_abort_if_not_#in~cond| 0))} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3278#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 23:56:26,255 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3278#(not (= |assume_abort_if_not_#in~cond| 0))} {3285#(and (<= main_~X~0 20) (<= 0 main_~X~0))} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,256 INFO L290 TraceCheckUtils]: 17: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,256 INFO L290 TraceCheckUtils]: 18: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,256 INFO L272 TraceCheckUtils]: 19: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:56:26,256 INFO L290 TraceCheckUtils]: 20: Hoare triple {3248#true} [94] __VERIFIER_assertENTRY-->L14: 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] {3248#true} is VALID [2022-04-07 23:56:26,256 INFO L290 TraceCheckUtils]: 21: Hoare triple {3248#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:56:26,256 INFO L290 TraceCheckUtils]: 22: Hoare triple {3248#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:56:26,257 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3248#true} {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,257 INFO L290 TraceCheckUtils]: 24: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,257 INFO L290 TraceCheckUtils]: 25: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,257 INFO L290 TraceCheckUtils]: 26: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,258 INFO L290 TraceCheckUtils]: 27: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,258 INFO L272 TraceCheckUtils]: 28: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:56:26,258 INFO L290 TraceCheckUtils]: 29: Hoare triple {3248#true} [94] __VERIFIER_assertENTRY-->L14: 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] {3248#true} is VALID [2022-04-07 23:56:26,258 INFO L290 TraceCheckUtils]: 30: Hoare triple {3248#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:56:26,258 INFO L290 TraceCheckUtils]: 31: Hoare triple {3248#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:56:26,275 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3248#true} {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,276 INFO L290 TraceCheckUtils]: 33: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,276 INFO L290 TraceCheckUtils]: 34: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,276 INFO L290 TraceCheckUtils]: 35: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,277 INFO L290 TraceCheckUtils]: 36: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,277 INFO L272 TraceCheckUtils]: 37: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:56:26,277 INFO L290 TraceCheckUtils]: 38: Hoare triple {3248#true} [94] __VERIFIER_assertENTRY-->L14: 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] {3248#true} is VALID [2022-04-07 23:56:26,277 INFO L290 TraceCheckUtils]: 39: Hoare triple {3248#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:56:26,277 INFO L290 TraceCheckUtils]: 40: Hoare triple {3248#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:56:26,281 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3248#true} {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,282 INFO L290 TraceCheckUtils]: 42: Hoare triple {3304#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {3383#(and (<= main_~x~0 main_~X~0) (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,282 INFO L290 TraceCheckUtils]: 43: Hoare triple {3383#(and (<= main_~x~0 main_~X~0) (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {3387#(and (<= main_~x~0 main_~X~0) (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-07 23:56:26,283 INFO L290 TraceCheckUtils]: 44: Hoare triple {3387#(and (<= main_~x~0 main_~X~0) (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {3391#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-07 23:56:26,283 INFO L290 TraceCheckUtils]: 45: Hoare triple {3391#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (<= main_~x~0 (+ main_~X~0 1)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3395#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-07 23:56:26,284 INFO L272 TraceCheckUtils]: 46: Hoare triple {3395#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:56:26,284 INFO L290 TraceCheckUtils]: 47: Hoare triple {3248#true} [94] __VERIFIER_assertENTRY-->L14: 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] {3402#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:56:26,284 INFO L290 TraceCheckUtils]: 48: Hoare triple {3402#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3406#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:56:26,284 INFO L290 TraceCheckUtils]: 49: Hoare triple {3406#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3406#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:56:26,285 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3406#(not (= |__VERIFIER_assert_#in~cond| 0))} {3395#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3413#(and (<= main_~X~0 20) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-07 23:56:26,286 INFO L290 TraceCheckUtils]: 51: Hoare triple {3413#(and (<= main_~X~0 20) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (<= main_~x~0 (+ main_~X~0 1)))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {3417#(and (<= main_~X~0 20) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-07 23:56:26,518 INFO L290 TraceCheckUtils]: 52: Hoare triple {3417#(and (<= main_~X~0 20) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)) (<= main_~x~0 (+ main_~X~0 1)))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3421#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (or (and (or (and (= (mod main_~xy~0 main_~y~0) 0) (not (= main_~y~0 0)) (<= (div main_~xy~0 main_~y~0) (+ main_~X~0 1)) (< main_~X~0 (div main_~xy~0 main_~y~0))) (and (= main_~xy~0 0) (= main_~y~0 0))) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0))) (= main_~Y~0 0)) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (<= (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) (+ main_~X~0 1)) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (<= (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) main_~X~0)) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} is VALID [2022-04-07 23:56:26,529 INFO L272 TraceCheckUtils]: 53: Hoare triple {3421#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (or (and (or (and (= (mod main_~xy~0 main_~y~0) 0) (not (= main_~y~0 0)) (<= (div main_~xy~0 main_~y~0) (+ main_~X~0 1)) (< main_~X~0 (div main_~xy~0 main_~y~0))) (and (= main_~xy~0 0) (= main_~y~0 0))) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0))) (= main_~Y~0 0)) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (<= (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) (+ main_~X~0 1)) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (<= (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) main_~X~0)) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {3425#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 23:56:26,529 INFO L290 TraceCheckUtils]: 54: Hoare triple {3425#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: 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] {3429#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:56:26,529 INFO L290 TraceCheckUtils]: 55: Hoare triple {3429#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: 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[] {3249#false} is VALID [2022-04-07 23:56:26,529 INFO L290 TraceCheckUtils]: 56: Hoare triple {3249#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3249#false} is VALID [2022-04-07 23:56:26,530 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 29 proven. 1 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-07 23:56:26,530 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:56:35,032 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:56:41,807 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:57:30,686 INFO L290 TraceCheckUtils]: 56: Hoare triple {3249#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3249#false} is VALID [2022-04-07 23:57:30,686 INFO L290 TraceCheckUtils]: 55: Hoare triple {3429#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: 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[] {3249#false} is VALID [2022-04-07 23:57:30,686 INFO L290 TraceCheckUtils]: 54: Hoare triple {3425#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: 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] {3429#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 23:57:30,687 INFO L272 TraceCheckUtils]: 53: Hoare triple {3445#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {3425#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 23:57:30,688 INFO L290 TraceCheckUtils]: 52: Hoare triple {3449#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3445#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} is VALID [2022-04-07 23:57:30,689 INFO L290 TraceCheckUtils]: 51: Hoare triple {3453#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {3449#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-07 23:57:30,690 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3406#(not (= |__VERIFIER_assert_#in~cond| 0))} {3457#(or (<= main_~x~0 main_~X~0) (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3453#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is VALID [2022-04-07 23:57:30,690 INFO L290 TraceCheckUtils]: 49: Hoare triple {3406#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3406#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:57:30,691 INFO L290 TraceCheckUtils]: 48: Hoare triple {3467#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3406#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 23:57:30,691 INFO L290 TraceCheckUtils]: 47: Hoare triple {3248#true} [94] __VERIFIER_assertENTRY-->L14: 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] {3467#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 23:57:30,691 INFO L272 TraceCheckUtils]: 46: Hoare triple {3457#(or (<= main_~x~0 main_~X~0) (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:57:32,694 WARN L290 TraceCheckUtils]: 45: Hoare triple {3474#(or (<= main_~x~0 main_~X~0) (and (or (= (+ main_~X~0 main_~v~0 (* (* (div (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) main_~x~0) 2)) (+ (* main_~Y~0 2) (* (div (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) 2) (* 2 (* main_~Y~0 main_~x~0)))) (not (= (mod (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) 0)) (= main_~X~0 0) (not (= (mod (+ main_~X~0 main_~v~0 (* (- 2) main_~Y~0 main_~x~0)) 2) 0))) (or (forall ((main_~y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))) (not (= main_~X~0 0)) (not (= (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) 0)) (not (= (mod (+ main_~X~0 main_~v~0 (* (- 2) main_~Y~0 main_~x~0)) 2) 0)))))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3457#(or (<= main_~x~0 main_~X~0) (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is UNKNOWN [2022-04-07 23:57:32,709 INFO L290 TraceCheckUtils]: 44: Hoare triple {3478#(forall ((v_main_~x~0_30 Int)) (or (not (<= v_main_~x~0_30 (+ main_~x~0 1))) (and (or (not (= (mod (+ main_~X~0 main_~v~0 (* v_main_~x~0_30 (- 2) main_~Y~0)) 2) 0)) (forall ((main_~y~0 Int)) (= (+ (* 2 (* v_main_~x~0_30 main_~y~0)) main_~X~0 main_~v~0) (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* main_~y~0 2) (* main_~Y~0 2)))) (not (= main_~X~0 0)) (not (= 0 (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0)))) (or (not (= (mod (+ main_~X~0 main_~v~0 (* v_main_~x~0_30 (- 2) main_~Y~0)) 2) 0)) (= main_~X~0 0) (= (+ main_~X~0 main_~v~0 (* (* v_main_~x~0_30 (div (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0)) 2)) (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* (div (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0) 2) (* main_~Y~0 2))) (not (= (mod (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0) 0)))) (<= v_main_~x~0_30 main_~X~0)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {3474#(or (<= main_~x~0 main_~X~0) (and (or (= (+ main_~X~0 main_~v~0 (* (* (div (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) main_~x~0) 2)) (+ (* main_~Y~0 2) (* (div (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) 2) (* 2 (* main_~Y~0 main_~x~0)))) (not (= (mod (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) 0)) (= main_~X~0 0) (not (= (mod (+ main_~X~0 main_~v~0 (* (- 2) main_~Y~0 main_~x~0)) 2) 0))) (or (forall ((main_~y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))) (not (= main_~X~0 0)) (not (= (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) 0)) (not (= (mod (+ main_~X~0 main_~v~0 (* (- 2) main_~Y~0 main_~x~0)) 2) 0)))))} is VALID [2022-04-07 23:57:35,418 WARN L290 TraceCheckUtils]: 43: Hoare triple {3482#(forall ((v_main_~x~0_30 Int)) (or (not (<= v_main_~x~0_30 (+ main_~x~0 1))) (<= v_main_~x~0_30 main_~X~0) (and (or (and (or (<= (div (- main_~X~0) (- 2)) (* v_main_~x~0_30 main_~Y~0)) (forall ((main_~y~0 Int)) (<= main_~y~0 (* v_main_~x~0_30 main_~y~0)))) (or (<= (div (- main_~X~0) (- 2)) (* v_main_~x~0_30 main_~Y~0)) (forall ((main_~y~0 Int)) (<= (* v_main_~x~0_30 main_~y~0) main_~y~0)))) (not (= main_~X~0 0))) (or (forall ((aux_div_main_~v~0_66 Int)) (or (not (= (mod (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0) 0)) (<= main_~X~0 (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* 2 aux_div_main_~v~0_66))) (= (+ (* 2 (* v_main_~x~0_30 (div (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0))) (* 2 aux_div_main_~v~0_66)) (* (div (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0) 2)))) (= main_~X~0 0)))))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {3478#(forall ((v_main_~x~0_30 Int)) (or (not (<= v_main_~x~0_30 (+ main_~x~0 1))) (and (or (not (= (mod (+ main_~X~0 main_~v~0 (* v_main_~x~0_30 (- 2) main_~Y~0)) 2) 0)) (forall ((main_~y~0 Int)) (= (+ (* 2 (* v_main_~x~0_30 main_~y~0)) main_~X~0 main_~v~0) (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* main_~y~0 2) (* main_~Y~0 2)))) (not (= main_~X~0 0)) (not (= 0 (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0)))) (or (not (= (mod (+ main_~X~0 main_~v~0 (* v_main_~x~0_30 (- 2) main_~Y~0)) 2) 0)) (= main_~X~0 0) (= (+ main_~X~0 main_~v~0 (* (* v_main_~x~0_30 (div (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0)) 2)) (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* (div (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0) 2) (* main_~Y~0 2))) (not (= (mod (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0) 0)))) (<= v_main_~x~0_30 main_~X~0)))} is UNKNOWN [2022-04-07 23:57:35,453 INFO L290 TraceCheckUtils]: 42: Hoare triple {3248#true} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {3482#(forall ((v_main_~x~0_30 Int)) (or (not (<= v_main_~x~0_30 (+ main_~x~0 1))) (<= v_main_~x~0_30 main_~X~0) (and (or (and (or (<= (div (- main_~X~0) (- 2)) (* v_main_~x~0_30 main_~Y~0)) (forall ((main_~y~0 Int)) (<= main_~y~0 (* v_main_~x~0_30 main_~y~0)))) (or (<= (div (- main_~X~0) (- 2)) (* v_main_~x~0_30 main_~Y~0)) (forall ((main_~y~0 Int)) (<= (* v_main_~x~0_30 main_~y~0) main_~y~0)))) (not (= main_~X~0 0))) (or (forall ((aux_div_main_~v~0_66 Int)) (or (not (= (mod (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0) 0)) (<= main_~X~0 (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* 2 aux_div_main_~v~0_66))) (= (+ (* 2 (* v_main_~x~0_30 (div (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0))) (* 2 aux_div_main_~v~0_66)) (* (div (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0) 2)))) (= main_~X~0 0)))))} is VALID [2022-04-07 23:57:35,453 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3248#true} {3248#true} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:57:35,453 INFO L290 TraceCheckUtils]: 40: Hoare triple {3248#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,453 INFO L290 TraceCheckUtils]: 39: Hoare triple {3248#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,453 INFO L290 TraceCheckUtils]: 38: Hoare triple {3248#true} [94] __VERIFIER_assertENTRY-->L14: 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] {3248#true} is VALID [2022-04-07 23:57:35,453 INFO L272 TraceCheckUtils]: 37: Hoare triple {3248#true} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:57:35,453 INFO L290 TraceCheckUtils]: 36: Hoare triple {3248#true} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:57:35,453 INFO L290 TraceCheckUtils]: 35: Hoare triple {3248#true} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 34: Hoare triple {3248#true} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 33: Hoare triple {3248#true} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3248#true} {3248#true} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 31: Hoare triple {3248#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 30: Hoare triple {3248#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 29: Hoare triple {3248#true} [94] __VERIFIER_assertENTRY-->L14: 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] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L272 TraceCheckUtils]: 28: Hoare triple {3248#true} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 27: Hoare triple {3248#true} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 26: Hoare triple {3248#true} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 25: Hoare triple {3248#true} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 24: Hoare triple {3248#true} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3248#true} {3248#true} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 22: Hoare triple {3248#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 21: Hoare triple {3248#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 20: Hoare triple {3248#true} [94] __VERIFIER_assertENTRY-->L14: 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] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L272 TraceCheckUtils]: 19: Hoare triple {3248#true} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:57:35,454 INFO L290 TraceCheckUtils]: 18: Hoare triple {3248#true} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L290 TraceCheckUtils]: 17: Hoare triple {3248#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3248#true} {3248#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L290 TraceCheckUtils]: 15: Hoare triple {3248#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L290 TraceCheckUtils]: 14: Hoare triple {3248#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L290 TraceCheckUtils]: 13: Hoare triple {3248#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L272 TraceCheckUtils]: 12: Hoare triple {3248#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L290 TraceCheckUtils]: 11: Hoare triple {3248#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3248#true} {3248#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L290 TraceCheckUtils]: 9: Hoare triple {3248#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L290 TraceCheckUtils]: 8: Hoare triple {3248#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L290 TraceCheckUtils]: 7: Hoare triple {3248#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L272 TraceCheckUtils]: 6: Hoare triple {3248#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L290 TraceCheckUtils]: 5: Hoare triple {3248#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L272 TraceCheckUtils]: 4: Hoare triple {3248#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3248#true} {3248#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L290 TraceCheckUtils]: 2: Hoare triple {3248#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,455 INFO L290 TraceCheckUtils]: 1: Hoare triple {3248#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3248#true} is VALID [2022-04-07 23:57:35,456 INFO L272 TraceCheckUtils]: 0: Hoare triple {3248#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-07 23:57:35,456 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 29 proven. 1 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-07 23:57:35,456 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:57:35,456 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1976598054] [2022-04-07 23:57:35,456 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:57:35,456 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1125985426] [2022-04-07 23:57:35,456 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1125985426] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:57:35,456 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:57:35,456 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13] total 25 [2022-04-07 23:57:35,456 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1409518227] [2022-04-07 23:57:35,456 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:57:35,457 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) Word has length 57 [2022-04-07 23:57:35,457 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:57:35,457 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 23:57:40,183 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 64 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-07 23:57:40,184 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-07 23:57:40,184 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:57:40,184 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-07 23:57:40,184 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=98, Invalid=496, Unknown=6, NotChecked=0, Total=600 [2022-04-07 23:57:40,184 INFO L87 Difference]: Start difference. First operand 56 states and 66 transitions. Second operand has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 23:57:45,334 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.06s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:58:00,401 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:58:15,464 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:58:15,464 INFO L93 Difference]: Finished difference Result 62 states and 74 transitions. [2022-04-07 23:58:15,464 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-07 23:58:15,465 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) Word has length 57 [2022-04-07 23:58:15,465 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:58:15,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 23:58:15,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 45 transitions. [2022-04-07 23:58:15,466 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 23:58:15,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 45 transitions. [2022-04-07 23:58:15,467 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 45 transitions. [2022-04-07 23:58:18,437 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 44 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 23:58:18,437 INFO L225 Difference]: With dead ends: 62 [2022-04-07 23:58:18,437 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 23:58:18,438 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 90 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 278 ImplicationChecksByTransitivity, 43.9s TimeCoverageRelationStatistics Valid=242, Invalid=1084, Unknown=6, NotChecked=0, Total=1332 [2022-04-07 23:58:18,438 INFO L913 BasicCegarLoop]: 16 mSDtfsCounter, 33 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 331 mSolverCounterSat, 16 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 7.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 398 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 331 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 50 IncrementalHoareTripleChecker+Unchecked, 7.9s IncrementalHoareTripleChecker+Time [2022-04-07 23:58:18,438 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 169 Invalid, 398 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 331 Invalid, 1 Unknown, 50 Unchecked, 7.9s Time] [2022-04-07 23:58:18,439 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 23:58:18,439 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 23:58:18,439 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:58:18,439 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 23:58:18,439 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 23:58:18,439 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 23:58:18,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:58:18,439 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 23:58:18,439 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 23:58:18,439 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:58:18,439 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:58:18,439 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 23:58:18,439 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 23:58:18,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:58:18,439 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 23:58:18,439 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 23:58:18,439 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:58:18,439 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:58:18,439 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:58:18,440 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:58:18,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 23:58:18,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 23:58:18,440 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 57 [2022-04-07 23:58:18,440 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:58:18,440 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 23:58:18,440 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 23:58:18,440 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 23:58:18,440 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:58:18,442 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 23:58:18,449 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-07 23:58:18,642 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:58:18,644 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-07 23:59:17,750 WARN L232 SmtUtils]: Spent 58.97s on a formula simplification. DAG size of input: 114 DAG size of output: 49 (called from [L 149] de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.HoareAnnotationComposer.combineInter) [2022-04-07 23:59:30,713 WARN L232 SmtUtils]: Spent 12.88s on a formula simplification. DAG size of input: 134 DAG size of output: 45 (called from [L 149] de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.HoareAnnotationComposer.combineInter) [2022-04-07 23:59:31,312 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-07 23:59:31,312 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-07 23:59:31,312 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-07 23:59:31,312 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-07 23:59:31,312 INFO L885 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-07 23:59:31,312 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-07 23:59:31,312 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-07 23:59:31,313 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 10 12) the Hoare annotation is: true [2022-04-07 23:59:31,313 INFO L882 garLoopResultBuilder]: For program point L11(line 11) no Hoare annotation was computed. [2022-04-07 23:59:31,313 INFO L882 garLoopResultBuilder]: For program point L11-2(lines 10 12) no Hoare annotation was computed. [2022-04-07 23:59:31,313 INFO L882 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 10 12) no Hoare annotation was computed. [2022-04-07 23:59:31,313 INFO L885 garLoopResultBuilder]: At program point mainENTRY(lines 21 53) the Hoare annotation is: true [2022-04-07 23:59:31,313 INFO L885 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: true [2022-04-07 23:59:31,313 INFO L882 garLoopResultBuilder]: For program point L25-1(line 25) no Hoare annotation was computed. [2022-04-07 23:59:31,313 INFO L878 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: (and (<= main_~X~0 20) (<= 0 main_~X~0)) [2022-04-07 23:59:31,313 INFO L882 garLoopResultBuilder]: For program point L27-1(line 27) no Hoare annotation was computed. [2022-04-07 23:59:31,313 INFO L878 garLoopResultBuilder]: At program point L32-2(lines 32 47) the Hoare annotation is: (let ((.cse4 (* main_~Y~0 main_~x~0))) (let ((.cse0 (* main_~Y~0 2)) (.cse1 (* 2 .cse4))) (and (<= main_~X~0 20) (= (+ .cse0 .cse1) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (or (<= main_~x~0 main_~X~0) (and (let ((.cse3 (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 .cse4))) (or (let ((.cse2 (div .cse3 main_~X~0))) (= (+ main_~X~0 main_~v~0 (* (* .cse2 main_~x~0) 2)) (+ .cse0 (* .cse2 2) .cse1))) (not (= (mod .cse3 main_~X~0) 0)))) (or (forall ((main_~y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))) (not (= main_~X~0 0)))))))) [2022-04-07 23:59:31,313 INFO L882 garLoopResultBuilder]: For program point L32-3(lines 32 47) no Hoare annotation was computed. [2022-04-07 23:59:31,313 INFO L878 garLoopResultBuilder]: At program point L35(line 35) the Hoare annotation is: (let ((.cse1 (* main_~Y~0 2)) (.cse0 (* 2 main_~xy~0)) (.cse4 (* 2 (* main_~Y~0 main_~x~0))) (.cse2 (* 2 main_~yx~0)) (.cse3 (<= main_~x~0 main_~X~0))) (and (= (+ .cse0 main_~X~0 main_~v~0) (+ .cse1 .cse2)) (or .cse3 (forall ((main_~y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))) (not (= main_~X~0 0))) (<= main_~X~0 20) (= (+ .cse1 .cse4) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (or (= (+ .cse0 (* main_~y~0 2) .cse4) (+ (* 2 (* main_~y~0 main_~x~0)) .cse2)) .cse3))) [2022-04-07 23:59:31,313 INFO L878 garLoopResultBuilder]: At program point L50(line 50) the Hoare annotation is: (let ((.cse2 (* main_~y~0 2)) (.cse0 (* main_~Y~0 2)) (.cse1 (* 2 (* main_~Y~0 main_~x~0)))) (and (= (+ .cse0 .cse1) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= (+ .cse2 .cse0 (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0)) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ .cse2 .cse0 .cse1)))) [2022-04-07 23:59:31,313 INFO L882 garLoopResultBuilder]: For program point L35-1(lines 32 47) no Hoare annotation was computed. [2022-04-07 23:59:31,313 INFO L882 garLoopResultBuilder]: For program point L50-1(line 50) no Hoare annotation was computed. [2022-04-07 23:59:31,314 INFO L882 garLoopResultBuilder]: For program point L40(lines 40 45) no Hoare annotation was computed. [2022-04-07 23:59:31,314 INFO L882 garLoopResultBuilder]: For program point mainFINAL(lines 21 53) no Hoare annotation was computed. [2022-04-07 23:59:31,314 INFO L882 garLoopResultBuilder]: For program point L40-2(lines 40 45) no Hoare annotation was computed. [2022-04-07 23:59:31,314 INFO L882 garLoopResultBuilder]: For program point mainEXIT(lines 21 53) no Hoare annotation was computed. [2022-04-07 23:59:31,314 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 13 19) the Hoare annotation is: true [2022-04-07 23:59:31,314 INFO L882 garLoopResultBuilder]: For program point L14(lines 14 17) no Hoare annotation was computed. [2022-04-07 23:59:31,314 INFO L882 garLoopResultBuilder]: For program point L15(lines 15 16) no Hoare annotation was computed. [2022-04-07 23:59:31,314 INFO L882 garLoopResultBuilder]: For program point L14-2(lines 13 19) no Hoare annotation was computed. [2022-04-07 23:59:31,314 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 16) no Hoare annotation was computed. [2022-04-07 23:59:31,314 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 13 19) no Hoare annotation was computed. [2022-04-07 23:59:31,316 INFO L719 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1, 1] [2022-04-07 23:59:31,317 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 23:59:31,319 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-07 23:59:31,319 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L11-2 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L14-2 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L25-1 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L50-1 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L32-3 has no Hoare annotation [2022-04-07 23:59:31,320 WARN L170 areAnnotationChecker]: L32-3 has no Hoare annotation [2022-04-07 23:59:33,326 WARN L170 areAnnotationChecker]: L32-3 has no Hoare annotation [2022-04-07 23:59:33,326 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-07 23:59:33,326 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-07 23:59:33,326 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-07 23:59:33,326 WARN L170 areAnnotationChecker]: L40-2 has no Hoare annotation [2022-04-07 23:59:33,326 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-07 23:59:33,326 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-07 23:59:33,326 INFO L163 areAnnotationChecker]: CFG has 8 edges. 7 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-07 23:59:33,330 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-07 23:59:33,331 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-07 23:59:33,336 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-07 23:59:33,336 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-07 23:59:33,337 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 11:59:33 BasicIcfg [2022-04-07 23:59:33,337 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 23:59:33,337 INFO L158 Benchmark]: Toolchain (without parser) took 360848.53ms. Allocated memory was 208.7MB in the beginning and 250.6MB in the end (delta: 41.9MB). Free memory was 153.2MB in the beginning and 88.0MB in the end (delta: 65.2MB). Peak memory consumption was 107.7MB. Max. memory is 8.0GB. [2022-04-07 23:59:33,337 INFO L158 Benchmark]: CDTParser took 0.08ms. Allocated memory is still 208.7MB. Free memory was 169.3MB in the beginning and 169.2MB in the end (delta: 76.5kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 23:59:33,337 INFO L158 Benchmark]: CACSL2BoogieTranslator took 179.85ms. Allocated memory is still 208.7MB. Free memory was 153.0MB in the beginning and 182.2MB in the end (delta: -29.2MB). Peak memory consumption was 13.2MB. Max. memory is 8.0GB. [2022-04-07 23:59:33,338 INFO L158 Benchmark]: Boogie Preprocessor took 52.91ms. Allocated memory is still 208.7MB. Free memory was 182.2MB in the beginning and 180.4MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 23:59:33,338 INFO L158 Benchmark]: RCFGBuilder took 384.04ms. Allocated memory is still 208.7MB. Free memory was 180.4MB in the beginning and 168.5MB in the end (delta: 11.9MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 23:59:33,338 INFO L158 Benchmark]: IcfgTransformer took 34.28ms. Allocated memory is still 208.7MB. Free memory was 168.5MB in the beginning and 166.8MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 23:59:33,338 INFO L158 Benchmark]: TraceAbstraction took 360193.47ms. Allocated memory was 208.7MB in the beginning and 250.6MB in the end (delta: 41.9MB). Free memory was 166.3MB in the beginning and 88.0MB in the end (delta: 78.3MB). Peak memory consumption was 121.7MB. Max. memory is 8.0GB. [2022-04-07 23:59:33,339 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.08ms. Allocated memory is still 208.7MB. Free memory was 169.3MB in the beginning and 169.2MB in the end (delta: 76.5kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 179.85ms. Allocated memory is still 208.7MB. Free memory was 153.0MB in the beginning and 182.2MB in the end (delta: -29.2MB). Peak memory consumption was 13.2MB. Max. memory is 8.0GB. * Boogie Preprocessor took 52.91ms. Allocated memory is still 208.7MB. Free memory was 182.2MB in the beginning and 180.4MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 384.04ms. Allocated memory is still 208.7MB. Free memory was 180.4MB in the beginning and 168.5MB in the end (delta: 11.9MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 34.28ms. Allocated memory is still 208.7MB. Free memory was 168.5MB in the beginning and 166.8MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 360193.47ms. Allocated memory was 208.7MB in the beginning and 250.6MB in the end (delta: 41.9MB). Free memory was 166.3MB in the beginning and 88.0MB in the end (delta: 78.3MB). Peak memory consumption was 121.7MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.boogie.preprocessor: - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] - GenericResult: Unfinished Backtranslation Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 16]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 32 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 358.1s, OverallIterations: 8, TraceHistogramMax: 5, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 62.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 72.7s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 8 mSolverCounterUnknown, 151 SdHoareTripleChecker+Valid, 23.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 143 mSDsluCounter, 1078 SdHoareTripleChecker+Invalid, 22.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 148 IncrementalHoareTripleChecker+Unchecked, 886 mSDsCounter, 96 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1298 IncrementalHoareTripleChecker+Invalid, 1550 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 96 mSolverCounterUnsat, 192 mSDtfsCounter, 1298 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 634 GetRequests, 493 SyntacticMatches, 6 SemanticMatches, 135 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 669 ImplicationChecksByTransitivity, 51.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=56occurred in iteration=7, InterpolantAutomatonStates: 103, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.2s AutomataMinimizationTime, 8 MinimizatonAttempts, 43 StatesRemovedByMinimization, 6 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 11 LocationsWithAnnotation, 29 PreInvPairs, 50 NumberOfFragments, 300 HoareAnnotationTreeSize, 29 FomulaSimplifications, 792 FormulaSimplificationTreeSizeReduction, 0.1s HoareSimplificationTime, 11 FomulaSimplificationsInter, 4622 FormulaSimplificationTreeSizeReductionInter, 72.6s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.4s SatisfiabilityAnalysisTime, 213.7s InterpolantComputationTime, 327 NumberOfCodeBlocks, 309 NumberOfCodeBlocksAsserted, 10 NumberOfCheckSat, 594 ConstructedInterpolants, 6 QuantifiedInterpolants, 3378 SizeOfPredicates, 50 NumberOfNonLiveVariables, 854 ConjunctsInSsa, 129 ConjunctsInUnsatCore, 14 InterpolantComputations, 2 PerfectInterpolantSequences, 339/426 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 32]: Loop Invariant [2022-04-07 23:59:33,343 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-07 23:59:33,343 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-07 23:59:33,343 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-07 23:59:33,343 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] Derived loop invariant: ((((X <= 20 && Y * 2 + 2 * (Y * x) == X * y * 2 + X + v) && 0 <= Y) && Y <= 20) && 0 <= X) && (x <= X || ((X + v + ((X + v) / -2 + Y + Y * x) / X * x * 2 == Y * 2 + ((X + v) / -2 + Y + Y * x) / X * 2 + 2 * (Y * x) || !(((X + v) / -2 + Y + Y * x) % X == 0)) && ((forall main_~y~0 : int :: 2 * (main_~y~0 * x) + X + v == main_~y~0 * 2 + Y * 2 + 2 * (Y * x)) || !(X == 0)))) RESULT: Ultimate proved your program to be correct! [2022-04-07 23:59:33,552 WARN L435 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forcibly destroying the process [2022-04-07 23:59:33,619 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 137 Received shutdown request...