/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-fb4f59a-m [2022-04-27 22:58:07,674 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 22:58:07,675 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 22:58:07,699 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 22:58:07,699 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 22:58:07,700 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 22:58:07,701 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 22:58:07,702 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 22:58:07,704 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 22:58:07,704 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 22:58:07,705 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 22:58:07,706 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 22:58:07,706 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 22:58:07,707 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 22:58:07,708 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 22:58:07,709 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 22:58:07,709 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 22:58:07,710 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 22:58:07,711 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 22:58:07,713 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 22:58:07,714 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 22:58:07,715 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 22:58:07,715 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 22:58:07,716 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 22:58:07,717 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 22:58:07,719 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 22:58:07,719 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 22:58:07,720 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 22:58:07,720 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 22:58:07,720 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 22:58:07,721 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 22:58:07,721 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 22:58:07,722 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 22:58:07,723 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 22:58:07,723 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 22:58:07,724 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 22:58:07,724 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 22:58:07,724 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 22:58:07,724 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 22:58:07,724 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 22:58:07,725 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 22:58:07,727 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 22:58:07,727 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-27 22:58:07,756 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 22:58:07,756 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 22:58:07,757 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 22:58:07,757 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 22:58:07,758 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 22:58:07,758 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 22:58:07,758 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 22:58:07,758 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 22:58:07,758 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 22:58:07,759 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 22:58:07,759 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 22:58:07,759 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 22:58:07,759 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 22:58:07,759 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 22:58:07,760 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 22:58:07,760 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 22:58:07,760 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 22:58:07,760 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 22:58:07,760 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 22:58:07,760 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 22:58:07,760 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 22:58:07,760 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 22:58:07,761 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 22:58:07,761 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 22:58:07,761 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 22:58:07,761 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 22:58:07,761 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-27 22:58:07,761 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-27 22:58:07,762 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-27 22:58:07,762 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-27 22:58:07,927 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 22:58:07,943 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 22:58:07,944 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 22:58:07,945 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 22:58:07,946 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 22:58:07,947 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-27 22:58:07,997 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c2d7861c3/c076170a41a244c994793446760a8a6e/FLAGc9b85b4f7 [2022-04-27 22:58:08,359 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 22:58:08,359 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c [2022-04-27 22:58:08,364 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c2d7861c3/c076170a41a244c994793446760a8a6e/FLAGc9b85b4f7 [2022-04-27 22:58:08,376 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c2d7861c3/c076170a41a244c994793446760a8a6e [2022-04-27 22:58:08,378 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 22:58:08,379 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-27 22:58:08,382 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 22:58:08,382 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 22:58:08,385 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 22:58:08,386 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 10:58:08" (1/1) ... [2022-04-27 22:58:08,387 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2d65a930 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:58:08, skipping insertion in model container [2022-04-27 22:58:08,387 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 10:58:08" (1/1) ... [2022-04-27 22:58:08,392 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 22:58:08,412 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 22:58:08,518 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-27 22:58:08,568 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 22:58:08,575 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 22:58:08,592 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-27 22:58:08,612 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 22:58:08,623 INFO L208 MainTranslator]: Completed translation [2022-04-27 22:58:08,625 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:58:08 WrapperNode [2022-04-27 22:58:08,627 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 22:58:08,628 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 22:58:08,628 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 22:58:08,628 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 22:58:08,637 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:58:08" (1/1) ... [2022-04-27 22:58:08,637 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:58:08" (1/1) ... [2022-04-27 22:58:08,643 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:58:08" (1/1) ... [2022-04-27 22:58:08,643 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:58:08" (1/1) ... [2022-04-27 22:58:08,656 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:58:08" (1/1) ... [2022-04-27 22:58:08,660 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:58:08" (1/1) ... [2022-04-27 22:58:08,664 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:58:08" (1/1) ... [2022-04-27 22:58:08,667 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 22:58:08,668 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 22:58:08,668 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 22:58:08,668 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 22:58:08,669 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:58:08" (1/1) ... [2022-04-27 22:58:08,675 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 22:58:08,682 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:58:08,696 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-27 22:58:08,700 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-27 22:58:08,725 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 22:58:08,725 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 22:58:08,725 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 22:58:08,725 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 22:58:08,725 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 22:58:08,725 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 22:58:08,727 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 22:58:08,727 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 22:58:08,727 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 22:58:08,727 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 22:58:08,727 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 22:58:08,727 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 22:58:08,727 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 22:58:08,727 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 22:58:08,728 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 22:58:08,728 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 22:58:08,728 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 22:58:08,728 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 22:58:08,728 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 22:58:08,728 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 22:58:08,786 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 22:58:08,788 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 22:58:08,922 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 22:58:08,928 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 22:58:08,928 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 22:58:08,929 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:58:08 BoogieIcfgContainer [2022-04-27 22:58:08,929 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 22:58:08,930 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-27 22:58:08,930 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-27 22:58:08,933 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-27 22:58:08,943 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:58:08" (1/1) ... [2022-04-27 22:58:08,945 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-27 22:58:08,978 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 10:58:08 BasicIcfg [2022-04-27 22:58:08,978 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-27 22:58:08,990 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 22:58:08,990 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 22:58:08,993 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 22:58:08,993 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 10:58:08" (1/4) ... [2022-04-27 22:58:08,994 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@467e3f1a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 10:58:08, skipping insertion in model container [2022-04-27 22:58:08,994 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:58:08" (2/4) ... [2022-04-27 22:58:08,994 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@467e3f1a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 10:58:08, skipping insertion in model container [2022-04-27 22:58:08,994 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:58:08" (3/4) ... [2022-04-27 22:58:08,994 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@467e3f1a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 10:58:08, skipping insertion in model container [2022-04-27 22:58:08,995 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 10:58:08" (4/4) ... [2022-04-27 22:58:08,996 INFO L111 eAbstractionObserver]: Analyzing ICFG bresenham-ll_valuebound20.cqvasr [2022-04-27 22:58:09,006 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 22:58:09,006 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 22:58:09,043 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 22:58:09,049 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@222772ad, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@43baf3b7 [2022-04-27 22:58:09,051 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 22:58:09,057 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-27 22:58:09,064 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 22:58:09,064 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:58:09,064 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:58:09,065 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:58:09,069 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:58:09,069 INFO L85 PathProgramCache]: Analyzing trace with hash -1563578423, now seen corresponding path program 1 times [2022-04-27 22:58:09,076 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:58:09,077 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [540381155] [2022-04-27 22:58:09,077 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:58:09,077 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:58:09,176 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:09,254 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:58:09,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:09,280 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-27 22:58:09,281 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-27 22:58:09,281 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-27 22:58:09,282 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 22:58:09,284 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:09,292 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-27 22:58:09,293 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-27 22:58:09,293 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-27 22:58:09,294 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-27 22:58:09,294 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 22:58:09,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:09,301 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-27 22:58:09,301 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-27 22:58:09,302 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-27 22:58:09,302 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-27 22:58:09,303 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-27 22:58:09,303 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-27 22:58:09,304 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-27 22:58:09,304 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-27 22:58:09,304 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-27 22:58:09,304 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-27 22:58:09,305 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-27 22:58:09,305 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-27 22:58:09,305 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-27 22:58:09,306 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-27 22:58:09,306 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-27 22:58:09,306 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-27 22:58:09,306 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-27 22:58:09,307 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-27 22:58:09,307 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-27 22:58:09,307 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-27 22:58:09,308 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-27 22:58:09,308 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-27 22:58:09,308 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-27 22:58:09,309 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-27 22:58:09,309 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-27 22:58:09,309 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-27 22:58:09,309 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-27 22:58:09,310 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-27 22:58:09,310 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:58:09,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [540381155] [2022-04-27 22:58:09,311 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [540381155] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:58:09,311 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:58:09,311 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 22:58:09,314 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [598972856] [2022-04-27 22:58:09,315 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:58:09,322 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-27 22:58:09,323 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:58:09,326 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-27 22:58:09,349 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-27 22:58:09,349 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 22:58:09,349 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:58:09,377 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 22:58:09,377 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 22:58:09,381 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-27 22:58:09,516 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:09,516 INFO L93 Difference]: Finished difference Result 57 states and 74 transitions. [2022-04-27 22:58:09,516 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 22:58:09,516 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-27 22:58:09,517 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:58:09,518 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-27 22:58:09,526 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 74 transitions. [2022-04-27 22:58:09,526 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-27 22:58:09,530 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 74 transitions. [2022-04-27 22:58:09,531 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 74 transitions. [2022-04-27 22:58:09,605 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-27 22:58:09,613 INFO L225 Difference]: With dead ends: 57 [2022-04-27 22:58:09,614 INFO L226 Difference]: Without dead ends: 27 [2022-04-27 22:58:09,616 INFO L412 NwaCegarLoop]: 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-27 22:58:09,619 INFO L413 NwaCegarLoop]: 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-27 22:58:09,620 INFO L414 NwaCegarLoop]: 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-27 22:58:09,633 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-27 22:58:09,645 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-27 22:58:09,645 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:58:09,646 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-27 22:58:09,646 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-27 22:58:09,647 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-27 22:58:09,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:09,651 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-27 22:58:09,651 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-27 22:58:09,652 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:58:09,652 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:58:09,652 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-27 22:58:09,653 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-27 22:58:09,656 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:09,657 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-27 22:58:09,657 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-27 22:58:09,657 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:58:09,657 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:58:09,657 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:58:09,658 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:58:09,658 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-27 22:58:09,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-04-27 22:58:09,662 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 23 [2022-04-27 22:58:09,662 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:58:09,662 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-04-27 22:58:09,662 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:58:09,663 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-27 22:58:09,663 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 22:58:09,663 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:58:09,664 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:58:09,664 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 22:58:09,664 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:58:09,665 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:58:09,665 INFO L85 PathProgramCache]: Analyzing trace with hash -1863481077, now seen corresponding path program 1 times [2022-04-27 22:58:09,665 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:58:09,665 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [256353942] [2022-04-27 22:58:09,665 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:58:09,665 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:58:09,693 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:58:09,693 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1212995167] [2022-04-27 22:58:09,693 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:58:09,694 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:58:09,694 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:58:09,699 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:58:09,704 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-27 22:58:09,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:09,749 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 22:58:09,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:09,763 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:58:09,996 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-27 22:58:09,997 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-27 22:58:09,997 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-27 22:58:09,997 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-27 22:58:09,997 INFO L272 TraceCheckUtils]: 4: Hoare triple {217#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {217#true} is VALID [2022-04-27 22:58:09,998 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-27 22:58:09,999 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-27 22:58:09,999 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-27 22:58:09,999 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-27 22:58:09,999 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-27 22:58:10,000 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-27 22:58:10,004 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-27 22:58:10,004 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-27 22:58:10,006 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-27 22:58:10,010 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-27 22:58:10,012 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-27 22:58:10,012 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-27 22:58:10,013 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-27 22:58:10,014 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-27 22:58:10,016 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-27 22:58:10,016 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-27 22:58:10,017 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-27 22:58:10,017 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-27 22:58:10,017 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-27 22:58:10,018 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 22:58:10,018 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:58:10,018 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [256353942] [2022-04-27 22:58:10,018 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:58:10,018 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1212995167] [2022-04-27 22:58:10,019 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1212995167] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:58:10,019 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:58:10,019 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 22:58:10,020 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [617446778] [2022-04-27 22:58:10,020 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:58:10,021 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-27 22:58:10,021 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:58:10,021 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-27 22:58:10,039 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-27 22:58:10,039 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 22:58:10,040 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:58:10,040 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 22:58:10,041 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 22:58:10,041 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-27 22:58:10,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:10,277 INFO L93 Difference]: Finished difference Result 39 states and 44 transitions. [2022-04-27 22:58:10,277 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 22:58:10,278 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-27 22:58:10,279 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:58:10,279 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-27 22:58:10,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 44 transitions. [2022-04-27 22:58:10,286 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-27 22:58:10,288 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 44 transitions. [2022-04-27 22:58:10,289 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 44 transitions. [2022-04-27 22:58:10,327 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-27 22:58:10,332 INFO L225 Difference]: With dead ends: 39 [2022-04-27 22:58:10,332 INFO L226 Difference]: Without dead ends: 35 [2022-04-27 22:58:10,332 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-27 22:58:10,335 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 10 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 61 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s 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.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:58:10,335 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 91 Invalid, 66 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 61 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:58:10,338 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-27 22:58:10,347 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 34. [2022-04-27 22:58:10,347 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:58:10,347 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-27 22:58:10,348 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-27 22:58:10,351 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-27 22:58:10,355 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:10,355 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-27 22:58:10,355 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-27 22:58:10,357 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:58:10,357 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:58:10,357 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-27 22:58:10,357 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-27 22:58:10,362 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:10,362 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-27 22:58:10,362 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-27 22:58:10,363 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:58:10,363 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:58:10,363 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:58:10,363 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:58:10,364 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-27 22:58:10,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 37 transitions. [2022-04-27 22:58:10,366 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 37 transitions. Word has length 23 [2022-04-27 22:58:10,366 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:58:10,366 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 37 transitions. [2022-04-27 22:58:10,366 INFO L496 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-27 22:58:10,366 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 37 transitions. [2022-04-27 22:58:10,369 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-27 22:58:10,369 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:58:10,369 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:58:10,394 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-27 22:58:10,583 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:58:10,584 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:58:10,584 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:58:10,585 INFO L85 PathProgramCache]: Analyzing trace with hash -646008129, now seen corresponding path program 1 times [2022-04-27 22:58:10,585 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:58:10,585 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [322811999] [2022-04-27 22:58:10,585 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:58:10,585 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:58:10,606 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:58:10,606 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [931597958] [2022-04-27 22:58:10,606 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:58:10,606 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:58:10,607 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:58:10,610 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:58:10,650 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-27 22:58:10,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:10,673 INFO L263 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 22:58:10,686 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:10,687 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:58:10,949 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-27 22:58:10,950 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-27 22:58:10,950 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-27 22:58:10,950 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-27 22:58:10,950 INFO L272 TraceCheckUtils]: 4: Hoare triple {467#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-27 22:58:10,951 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-27 22:58:10,951 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-27 22:58:10,951 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-27 22:58:10,951 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-27 22:58:10,951 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-27 22:58:10,952 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-27 22:58:10,952 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-27 22:58:10,952 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-27 22:58:10,952 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-27 22:58:10,952 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-27 22:58:10,953 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-27 22:58:10,953 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-27 22:58:10,954 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-27 22:58:10,954 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-27 22:58:10,955 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-27 22:58:10,955 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-27 22:58:10,955 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-27 22:58:10,955 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-27 22:58:10,956 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-27 22:58:10,957 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-27 22:58:10,957 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-27 22:58:10,958 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-27 22:58:10,959 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-27 22:58:10,960 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-27 22:58:10,960 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-27 22:58:10,961 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-27 22:58:10,961 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-27 22:58:10,963 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:58:10,963 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:58:11,173 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-27 22:58:11,174 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-27 22:58:11,174 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-27 22:58:11,175 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-27 22:58:11,176 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-27 22:58:11,178 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-27 22:58:11,178 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-27 22:58:11,179 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-27 22:58:11,180 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-27 22:58:11,180 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-27 22:58:11,180 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-27 22:58:11,180 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-27 22:58:11,181 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-27 22:58:11,184 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-27 22:58:11,184 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-27 22:58:11,185 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-27 22:58:11,185 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-27 22:58:11,186 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-27 22:58:11,186 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-27 22:58:11,187 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-27 22:58:11,187 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-27 22:58:11,187 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-27 22:58:11,188 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-27 22:58:11,188 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-27 22:58:11,188 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-27 22:58:11,189 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-27 22:58:11,190 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-27 22:58:11,190 INFO L272 TraceCheckUtils]: 4: Hoare triple {467#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {467#true} is VALID [2022-04-27 22:58:11,191 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-27 22:58:11,191 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-27 22:58:11,199 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-27 22:58:11,199 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-27 22:58:11,199 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-27 22:58:11,200 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:58:11,200 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [322811999] [2022-04-27 22:58:11,200 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:58:11,200 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [931597958] [2022-04-27 22:58:11,200 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [931597958] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:58:11,200 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 22:58:11,200 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-27 22:58:11,201 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1488791811] [2022-04-27 22:58:11,201 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 22:58:11,201 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-27 22:58:11,202 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:58:11,202 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-27 22:58:11,249 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-27 22:58:11,249 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 22:58:11,250 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:58:11,251 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 22:58:11,251 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 22:58:11,251 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-27 22:58:11,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:11,845 INFO L93 Difference]: Finished difference Result 48 states and 54 transitions. [2022-04-27 22:58:11,846 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 22:58:11,846 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-27 22:58:11,846 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:58:11,846 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-27 22:58:11,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 51 transitions. [2022-04-27 22:58:11,849 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-27 22:58:11,851 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 51 transitions. [2022-04-27 22:58:11,851 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 51 transitions. [2022-04-27 22:58:11,908 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:58:11,910 INFO L225 Difference]: With dead ends: 48 [2022-04-27 22:58:11,910 INFO L226 Difference]: Without dead ends: 42 [2022-04-27 22:58:11,910 INFO L412 NwaCegarLoop]: 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-27 22:58:11,911 INFO L413 NwaCegarLoop]: 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.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:58:11,912 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 135 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 166 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 22:58:11,912 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-04-27 22:58:11,923 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2022-04-27 22:58:11,924 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:58:11,924 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-27 22:58:11,924 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-27 22:58:11,925 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-27 22:58:11,927 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:11,927 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-27 22:58:11,927 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-27 22:58:11,927 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:58:11,927 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:58:11,928 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-27 22:58:11,928 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-27 22:58:11,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:11,930 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-27 22:58:11,930 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-27 22:58:11,931 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:58:11,931 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:58:11,931 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:58:11,931 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:58:11,931 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-27 22:58:11,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-27 22:58:11,933 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 32 [2022-04-27 22:58:11,933 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:58:11,933 INFO L495 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-27 22:58:11,933 INFO L496 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-27 22:58:11,934 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-27 22:58:11,934 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 22:58:11,934 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:58:11,935 INFO L195 NwaCegarLoop]: 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-27 22:58:11,957 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 22:58:12,135 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-27 22:58:12,135 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:58:12,136 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:58:12,136 INFO L85 PathProgramCache]: Analyzing trace with hash -1661983408, now seen corresponding path program 1 times [2022-04-27 22:58:12,136 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:58:12,136 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1686575326] [2022-04-27 22:58:12,136 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:58:12,137 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:58:12,154 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:58:12,155 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [278619743] [2022-04-27 22:58:12,155 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:58:12,155 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:58:12,155 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:58:12,156 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:58:12,175 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-27 22:58:12,209 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:12,210 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-27 22:58:12,220 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:12,221 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:58:12,679 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-27 22:58:12,679 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-27 22:58:12,680 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-27 22:58:12,680 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-27 22:58:12,680 INFO L272 TraceCheckUtils]: 4: Hoare triple {885#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-27 22:58:12,680 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-27 22:58:12,680 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-27 22:58:12,680 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-27 22:58:12,681 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-27 22:58:12,681 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-27 22:58:12,681 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-27 22:58:12,681 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-27 22:58:12,681 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-27 22:58:12,681 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-27 22:58:12,681 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-27 22:58:12,682 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-27 22:58:12,682 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-27 22:58:12,682 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-27 22:58:12,683 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-27 22:58:12,683 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-27 22:58:12,683 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-27 22:58:12,683 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-27 22:58:12,683 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-27 22:58:12,684 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-27 22:58:12,685 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-27 22:58:12,685 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-27 22:58:12,686 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-27 22:58:12,686 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-27 22:58:12,687 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-27 22:58:12,687 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-27 22:58:12,687 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-27 22:58:12,688 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-27 22:58:12,689 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-27 22:58:12,690 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-27 22:58:12,691 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-27 22:58:12,693 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-27 22:58:12,693 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-27 22:58:12,693 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-27 22:58:12,694 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-27 22:58:12,694 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-27 22:58:12,694 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:58:13,523 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-27 22:58:13,524 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-27 22:58:13,524 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-27 22:58:13,525 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-27 22:58:13,526 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-27 22:58:13,527 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-27 22:58:13,528 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-27 22:58:13,528 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-27 22:58:13,529 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-27 22:58:13,530 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-27 22:58:13,530 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-27 22:58:13,531 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-27 22:58:13,533 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-27 22:58:13,535 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-27 22:58:13,537 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-27 22:58:13,537 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-27 22:58:13,537 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-27 22:58:13,538 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-27 22:58:13,538 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-27 22:58:13,538 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-27 22:58:13,538 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-27 22:58:13,538 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-27 22:58:13,538 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-27 22:58:13,539 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-27 22:58:13,539 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-27 22:58:13,539 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-27 22:58:13,539 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-27 22:58:13,539 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-27 22:58:13,539 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-27 22:58:13,539 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-27 22:58:13,540 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-27 22:58:13,540 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-27 22:58:13,540 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-27 22:58:13,540 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-27 22:58:13,540 INFO L272 TraceCheckUtils]: 4: Hoare triple {885#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {885#true} is VALID [2022-04-27 22:58:13,540 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-27 22:58:13,541 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-27 22:58:13,541 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-27 22:58:13,541 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-27 22:58:13,541 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-27 22:58:13,541 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:58:13,542 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1686575326] [2022-04-27 22:58:13,542 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:58:13,542 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [278619743] [2022-04-27 22:58:13,542 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [278619743] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:58:13,542 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 22:58:13,542 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 22 [2022-04-27 22:58:13,542 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1539189114] [2022-04-27 22:58:13,542 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 22:58:13,543 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-27 22:58:13,544 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:58:13,544 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-27 22:58:13,595 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:58:13,596 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-27 22:58:13,596 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:58:13,596 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-27 22:58:13,596 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-27 22:58:13,597 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-27 22:58:14,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:14,926 INFO L93 Difference]: Finished difference Result 60 states and 68 transitions. [2022-04-27 22:58:14,926 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-27 22:58:14,926 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-27 22:58:14,927 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:58:14,927 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-27 22:58:14,929 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 62 transitions. [2022-04-27 22:58:14,929 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-27 22:58:14,931 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 62 transitions. [2022-04-27 22:58:14,931 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 62 transitions. [2022-04-27 22:58:14,997 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-27 22:58:14,998 INFO L225 Difference]: With dead ends: 60 [2022-04-27 22:58:14,998 INFO L226 Difference]: Without dead ends: 52 [2022-04-27 22:58:14,999 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 93 GetRequests, 57 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 261 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=220, Invalid=1112, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 22:58:15,000 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 28 mSDsluCounter, 202 mSDsCounter, 0 mSdLazyCounter, 254 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s 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.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:58:15,000 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 222 Invalid, 377 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 254 Invalid, 0 Unknown, 98 Unchecked, 0.3s Time] [2022-04-27 22:58:15,001 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-27 22:58:15,010 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 41. [2022-04-27 22:58:15,010 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:58:15,011 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-27 22:58:15,011 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-27 22:58:15,011 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-27 22:58:15,013 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:15,013 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2022-04-27 22:58:15,013 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2022-04-27 22:58:15,014 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:58:15,014 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:58:15,014 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-27 22:58:15,014 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-27 22:58:15,016 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:58:15,016 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2022-04-27 22:58:15,017 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2022-04-27 22:58:15,017 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:58:15,017 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:58:15,017 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:58:15,017 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:58:15,017 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-27 22:58:15,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-27 22:58:15,019 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 39 [2022-04-27 22:58:15,019 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:58:15,019 INFO L495 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-27 22:58:15,020 INFO L496 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-27 22:58:15,020 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-27 22:58:15,020 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-27 22:58:15,021 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:58:15,021 INFO L195 NwaCegarLoop]: 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-27 22:58:15,039 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-27 22:58:15,227 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:58:15,228 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:58:15,228 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:58:15,228 INFO L85 PathProgramCache]: Analyzing trace with hash -1381917339, now seen corresponding path program 1 times [2022-04-27 22:58:15,228 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:58:15,228 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1173704317] [2022-04-27 22:58:15,228 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:58:15,229 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:58:15,262 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:58:15,262 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1545096146] [2022-04-27 22:58:15,262 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:58:15,262 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:58:15,262 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:58:15,263 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:58:15,288 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-27 22:58:15,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:15,326 INFO L263 TraceCheckSpWp]: Trace formula consists of 136 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-27 22:58:15,338 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:58:15,339 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:58:30,677 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 22:58:39,239 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 22:58:48,753 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-27 22:58:48,754 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-27 22:58:48,754 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-27 22:58:48,754 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-27 22:58:48,754 INFO L272 TraceCheckUtils]: 4: Hoare triple {1417#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-27 22:58:48,754 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-27 22:58:48,754 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-27 22:58:48,755 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-27 22:58:48,755 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-27 22:58:48,755 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-27 22:58:48,755 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-27 22:58:48,755 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-27 22:58:48,755 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-27 22:58:48,755 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-27 22:58:48,755 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-27 22:58:48,756 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-27 22:58:48,756 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-27 22:58:48,756 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-27 22:58:48,757 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-27 22:58:48,757 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-27 22:58:48,757 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-27 22:58:48,757 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-27 22:58:48,757 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-27 22:58:48,758 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-27 22:58:48,758 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-27 22:58:48,760 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-27 22:58:48,760 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-27 22:58:48,760 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-27 22:58:48,760 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-27 22:58:48,761 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-27 22:58:48,762 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-27 22:58:48,762 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-27 22:58:48,763 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-27 22:58:48,763 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-27 22:58:48,764 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-27 22:58:48,764 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-27 22:58:48,764 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-27 22:58:48,768 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-27 22:58:48,768 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-27 22:58:48,769 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-27 22:58:48,769 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-27 22:58:48,771 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-27 22:58:48,771 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-27 22:58:50,773 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-27 22:58:50,779 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-27 22:58:50,779 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-27 22:58:50,780 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-27 22:58:50,780 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-27 22:58:50,780 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-27 22:58:50,781 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:58:54,783 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-27 22:58:54,784 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-27 22:58:54,784 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-27 22:58:54,785 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-27 22:58:54,786 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-27 22:58:54,787 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-27 22:58:54,788 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-27 22:58:54,788 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-27 22:58:54,789 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-27 22:58:54,789 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-27 22:58:54,789 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-27 22:58:54,790 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-27 22:58:54,790 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-27 22:58:54,791 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-27 22:58:54,791 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-27 22:58:54,792 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-27 22:58:54,792 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-27 22:58:54,792 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-27 22:58:54,792 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-27 22:58:54,792 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-27 22:58:54,793 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-27 22:58:54,793 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-27 22:58:54,794 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-27 22:58:54,794 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-27 22:58:54,795 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-27 22:58:54,795 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-27 22:58:54,795 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-27 22:58:54,795 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-27 22:58:54,795 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-27 22:58:54,796 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-27 22:58:54,796 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-27 22:58:54,796 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-27 22:58:54,796 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-27 22:58:54,796 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-27 22:58:54,797 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-27 22:58:54,797 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-27 22:58:54,797 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-27 22:58:54,797 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-27 22:58:54,797 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-27 22:58:54,797 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-27 22:58:54,797 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-27 22:58:54,797 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-27 22:58:54,797 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-27 22:58:54,798 INFO L272 TraceCheckUtils]: 4: Hoare triple {1417#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1417#true} is VALID [2022-04-27 22:58:54,798 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-27 22:58:54,798 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-27 22:58:54,798 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-27 22:58:54,798 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-27 22:58:54,798 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-27 22:58:54,799 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:58:54,799 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1173704317] [2022-04-27 22:58:54,799 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:58:54,799 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1545096146] [2022-04-27 22:58:54,799 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1545096146] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:58:54,799 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 22:58:54,799 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-27 22:58:54,799 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1219232945] [2022-04-27 22:58:54,799 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 22:58:54,800 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-27 22:58:54,802 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:58:54,802 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-27 22:58:56,845 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-27 22:58:56,846 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 22:58:56,846 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:58:56,846 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 22:58:56,846 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-27 22:58:56,847 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-27 22:58:59,053 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-27 22:59:03,176 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-27 22:59:05,191 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-27 22:59:07,201 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-27 22:59:09,326 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-27 22:59:11,354 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-27 22:59:13,766 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:59:13,766 INFO L93 Difference]: Finished difference Result 56 states and 63 transitions. [2022-04-27 22:59:13,766 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 22:59:13,767 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-27 22:59:13,767 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:59:13,767 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-27 22:59:13,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 48 transitions. [2022-04-27 22:59:13,769 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-27 22:59:13,770 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 48 transitions. [2022-04-27 22:59:13,770 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 48 transitions. [2022-04-27 22:59:15,817 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-27 22:59:15,819 INFO L225 Difference]: With dead ends: 56 [2022-04-27 22:59:15,819 INFO L226 Difference]: Without dead ends: 50 [2022-04-27 22:59:15,819 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 81 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 4.5s TimeCoverageRelationStatistics Valid=66, Invalid=238, Unknown=2, NotChecked=0, Total=306 [2022-04-27 22:59:15,820 INFO L413 NwaCegarLoop]: 19 mSDtfsCounter, 25 mSDsluCounter, 114 mSDsCounter, 0 mSdLazyCounter, 143 mSolverCounterSat, 13 mSolverCounterUnsat, 6 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 12.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 133 SdHoareTripleChecker+Invalid, 162 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 143 IncrementalHoareTripleChecker+Invalid, 6 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 12.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:59:15,820 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [26 Valid, 133 Invalid, 162 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 143 Invalid, 6 Unknown, 0 Unchecked, 12.3s Time] [2022-04-27 22:59:15,821 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-27 22:59:15,832 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 44. [2022-04-27 22:59:15,832 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:59:15,832 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-27 22:59:15,833 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-27 22:59:15,834 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-27 22:59:15,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:59:15,840 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-27 22:59:15,840 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-27 22:59:15,840 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:59:15,841 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:59:15,841 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-27 22:59:15,841 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-27 22:59:15,843 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:59:15,843 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-27 22:59:15,843 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-27 22:59:15,843 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:59:15,843 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:59:15,844 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:59:15,844 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:59:15,844 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-27 22:59:15,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 49 transitions. [2022-04-27 22:59:15,845 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 49 transitions. Word has length 48 [2022-04-27 22:59:15,846 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:59:15,846 INFO L495 AbstractCegarLoop]: Abstraction has 44 states and 49 transitions. [2022-04-27 22:59:15,846 INFO L496 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-27 22:59:15,846 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 49 transitions. [2022-04-27 22:59:15,847 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-27 22:59:15,847 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:59:15,847 INFO L195 NwaCegarLoop]: 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-27 22:59:15,874 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-27 22:59:16,071 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:59:16,072 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:59:16,072 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:59:16,072 INFO L85 PathProgramCache]: Analyzing trace with hash -137152858, now seen corresponding path program 1 times [2022-04-27 22:59:16,072 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:59:16,072 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1046333021] [2022-04-27 22:59:16,072 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:59:16,073 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:59:16,088 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:59:16,088 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2094911220] [2022-04-27 22:59:16,088 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:59:16,088 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:59:16,088 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:59:16,092 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:59:16,093 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-27 22:59:16,147 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:59:16,148 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 22:59:16,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:59:16,169 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:59:19,008 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-27 22:59:19,008 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-27 22:59:19,008 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-27 22:59:19,008 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-27 22:59:19,009 INFO L272 TraceCheckUtils]: 4: Hoare triple {1968#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-27 22:59:19,009 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-27 22:59:19,009 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-27 22:59:19,009 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-27 22:59:19,009 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-27 22:59:19,009 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-27 22:59:19,009 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-27 22:59:19,009 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-27 22:59:19,010 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-27 22:59:19,010 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-27 22:59:19,010 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-27 22:59:19,010 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-27 22:59:19,010 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-27 22:59:19,011 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-27 22:59:19,012 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-27 22:59:19,012 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-27 22:59:19,012 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-27 22:59:19,012 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-27 22:59:19,012 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-27 22:59:19,013 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-27 22:59:19,013 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-27 22:59:19,014 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-27 22:59:19,015 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-27 22:59:19,016 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-27 22:59:19,016 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-27 22:59:19,016 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-27 22:59:19,016 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-27 22:59:19,016 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-27 22:59:19,017 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-27 22:59:19,017 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-27 22:59:19,018 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-27 22:59:19,019 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-27 22:59:19,019 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-27 22:59:19,019 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-27 22:59:19,019 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-27 22:59:19,019 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-27 22:59:19,020 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-27 22:59:19,021 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-27 22:59:19,021 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-27 22:59:19,022 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-27 22:59:19,022 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-27 22:59:19,022 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-27 22:59:19,022 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-27 22:59:19,022 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-27 22:59:19,023 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-27 22:59:19,023 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:59:19,389 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-27 22:59:19,390 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-27 22:59:19,390 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-27 22:59:19,390 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-27 22:59:19,390 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-27 22:59:19,391 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-27 22:59:19,392 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-27 22:59:19,392 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-27 22:59:19,392 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-27 22:59:19,392 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-27 22:59:19,393 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-27 22:59:19,393 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-27 22:59:19,394 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-27 22:59:19,394 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-27 22:59:19,395 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-27 22:59:19,395 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-27 22:59:19,395 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-27 22:59:19,396 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-27 22:59:19,396 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-27 22:59:19,396 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-27 22:59:19,396 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-27 22:59:19,397 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-27 22:59:19,398 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-27 22:59:19,399 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-27 22:59:19,399 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-27 22:59:19,400 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-27 22:59:19,400 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-27 22:59:19,400 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-27 22:59:19,401 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-27 22:59:19,401 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-27 22:59:19,402 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-27 22:59:19,404 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-27 22:59:19,405 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-27 22:59:19,405 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-27 22:59:19,405 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-27 22:59:19,405 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-27 22:59:19,405 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-27 22:59:19,405 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-27 22:59:19,405 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-27 22:59:19,405 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-27 22:59:19,406 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-27 22:59:19,406 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-27 22:59:19,406 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-27 22:59:19,406 INFO L272 TraceCheckUtils]: 4: Hoare triple {1968#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1968#true} is VALID [2022-04-27 22:59:19,406 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-27 22:59:19,406 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-27 22:59:19,406 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-27 22:59:19,406 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-27 22:59:19,407 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-27 22:59:19,407 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:59:19,407 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1046333021] [2022-04-27 22:59:19,407 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:59:19,407 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2094911220] [2022-04-27 22:59:19,407 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2094911220] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:59:19,407 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 22:59:19,407 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-27 22:59:19,407 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [671160244] [2022-04-27 22:59:19,408 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 22:59:19,408 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-27 22:59:19,408 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:59:19,409 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-27 22:59:19,458 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-27 22:59:19,458 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 22:59:19,458 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:59:19,459 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 22:59:19,459 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-27 22:59:19,459 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-27 22:59:19,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:59:19,814 INFO L93 Difference]: Finished difference Result 65 states and 75 transitions. [2022-04-27 22:59:19,814 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 22:59:19,814 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-27 22:59:19,815 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:59:19,815 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-27 22:59:19,816 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 58 transitions. [2022-04-27 22:59:19,817 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-27 22:59:19,818 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 58 transitions. [2022-04-27 22:59:19,818 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 58 transitions. [2022-04-27 22:59:19,871 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:59:19,872 INFO L225 Difference]: With dead ends: 65 [2022-04-27 22:59:19,872 INFO L226 Difference]: Without dead ends: 59 [2022-04-27 22:59:19,873 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 85 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=59, Invalid=181, Unknown=0, NotChecked=0, Total=240 [2022-04-27 22:59:19,873 INFO L413 NwaCegarLoop]: 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-27 22:59:19,874 INFO L414 NwaCegarLoop]: 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-27 22:59:19,884 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-04-27 22:59:19,906 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 51. [2022-04-27 22:59:19,906 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:59:19,906 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-27 22:59:19,907 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-27 22:59:19,907 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-27 22:59:19,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:59:19,910 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-27 22:59:19,910 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-27 22:59:19,910 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:59:19,910 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:59:19,911 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-27 22:59:19,911 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-27 22:59:19,915 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:59:19,915 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-27 22:59:19,915 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-27 22:59:19,915 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:59:19,916 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:59:19,916 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:59:19,916 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:59:19,917 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-27 22:59:19,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 59 transitions. [2022-04-27 22:59:19,922 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 59 transitions. Word has length 48 [2022-04-27 22:59:19,922 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:59:19,922 INFO L495 AbstractCegarLoop]: Abstraction has 51 states and 59 transitions. [2022-04-27 22:59:19,923 INFO L496 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-27 22:59:19,923 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 59 transitions. [2022-04-27 22:59:19,926 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-27 22:59:19,926 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:59:19,926 INFO L195 NwaCegarLoop]: 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-27 22:59:19,946 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-27 22:59:20,139 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:59:20,140 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:59:20,140 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:59:20,140 INFO L85 PathProgramCache]: Analyzing trace with hash -545218702, now seen corresponding path program 2 times [2022-04-27 22:59:20,140 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:59:20,140 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1378466968] [2022-04-27 22:59:20,140 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:59:20,140 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:59:20,155 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:59:20,155 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1299691735] [2022-04-27 22:59:20,155 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:59:20,155 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:59:20,155 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:59:20,156 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:59:20,161 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-27 22:59:20,207 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:59:20,208 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:59:20,208 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 22:59:20,220 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:59:20,221 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:59:21,218 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-27 22:59:21,218 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-27 22:59:21,218 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-27 22:59:21,218 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-27 22:59:21,218 INFO L272 TraceCheckUtils]: 4: Hoare triple {2555#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-27 22:59:21,218 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-27 22:59:21,219 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-27 22:59:21,219 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-27 22:59:21,219 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-27 22:59:21,219 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-27 22:59:21,232 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-27 22:59:21,232 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-27 22:59:21,232 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-27 22:59:21,232 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-27 22:59:21,232 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-27 22:59:21,233 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-27 22:59:21,233 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-27 22:59:21,233 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-27 22:59:21,234 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-27 22:59:21,234 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-27 22:59:21,234 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-27 22:59:21,234 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-27 22:59:21,234 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-27 22:59:21,235 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-27 22:59:21,236 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-27 22:59:21,237 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-27 22:59:21,238 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-27 22:59:21,238 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-27 22:59:21,238 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-27 22:59:21,238 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-27 22:59:21,239 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-27 22:59:21,239 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-27 22:59:21,239 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-27 22:59:21,240 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-27 22:59:21,241 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-27 22:59:21,241 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-27 22:59:21,242 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-27 22:59:21,242 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-27 22:59:21,242 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-27 22:59:21,242 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-27 22:59:21,242 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-27 22:59:21,243 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-27 22:59:21,243 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-27 22:59:21,244 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-27 22:59:21,245 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-27 22:59:21,245 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-27 22:59:21,245 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-27 22:59:21,245 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-27 22:59:21,245 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-27 22:59:21,245 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-27 22:59:21,246 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-27 22:59:21,247 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-27 22:59:21,247 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-27 22:59:21,247 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-27 22:59:21,247 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-27 22:59:21,247 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-27 22:59:21,247 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-27 22:59:21,248 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-27 22:59:21,248 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:59:21,585 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-27 22:59:21,585 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-27 22:59:21,585 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-27 22:59:21,585 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-27 22:59:21,585 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-27 22:59:21,586 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-27 22:59:21,587 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-27 22:59:21,587 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-27 22:59:21,587 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-27 22:59:21,587 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-27 22:59:21,587 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-27 22:59:21,588 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-27 22:59:21,588 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-27 22:59:21,589 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-27 22:59:21,589 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-27 22:59:21,590 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-27 22:59:21,590 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-27 22:59:21,590 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-27 22:59:21,590 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-27 22:59:21,591 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-27 22:59:21,591 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-27 22:59:21,592 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-27 22:59:21,592 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-27 22:59:21,593 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-27 22:59:21,594 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-27 22:59:21,594 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-27 22:59:21,594 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-27 22:59:21,594 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-27 22:59:21,606 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-27 22:59:21,607 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-27 22:59:21,608 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-27 22:59:21,609 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-27 22:59:21,609 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-27 22:59:21,610 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-27 22:59:21,610 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-27 22:59:21,610 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-27 22:59:21,610 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-27 22:59:21,610 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-27 22:59:21,611 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-27 22:59:21,612 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-27 22:59:21,612 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-27 22:59:21,612 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-27 22:59:21,612 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-27 22:59:21,612 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-27 22:59:21,612 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-27 22:59:21,613 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-27 22:59:21,613 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-27 22:59:21,614 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-27 22:59:21,614 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-27 22:59:21,614 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-27 22:59:21,614 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-27 22:59:21,614 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-27 22:59:21,614 INFO L272 TraceCheckUtils]: 4: Hoare triple {2555#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2555#true} is VALID [2022-04-27 22:59:21,617 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-27 22:59:21,618 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-27 22:59:21,618 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-27 22:59:21,620 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-27 22:59:21,620 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-27 22:59:21,621 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:59:21,621 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1378466968] [2022-04-27 22:59:21,621 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:59:21,621 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1299691735] [2022-04-27 22:59:21,621 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1299691735] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:59:21,621 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 22:59:21,621 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-27 22:59:21,622 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [926238920] [2022-04-27 22:59:21,622 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 22:59:21,623 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-27 22:59:21,623 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:59:21,624 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-27 22:59:21,677 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-27 22:59:21,677 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 22:59:21,677 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:59:21,677 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 22:59:21,677 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-04-27 22:59:21,678 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-27 22:59:22,431 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:59:22,431 INFO L93 Difference]: Finished difference Result 78 states and 93 transitions. [2022-04-27 22:59:22,432 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 22:59:22,432 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-27 22:59:22,432 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:59:22,432 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-27 22:59:22,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 64 transitions. [2022-04-27 22:59:22,434 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-27 22:59:22,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 64 transitions. [2022-04-27 22:59:22,436 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 64 transitions. [2022-04-27 22:59:22,485 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:59:22,486 INFO L225 Difference]: With dead ends: 78 [2022-04-27 22:59:22,486 INFO L226 Difference]: Without dead ends: 72 [2022-04-27 22:59:22,487 INFO L412 NwaCegarLoop]: 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-27 22:59:22,487 INFO L413 NwaCegarLoop]: 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-27 22:59:22,488 INFO L414 NwaCegarLoop]: 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-27 22:59:22,488 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states. [2022-04-27 22:59:22,526 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 56. [2022-04-27 22:59:22,526 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:59:22,527 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-27 22:59:22,527 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-27 22:59:22,527 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-27 22:59:22,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:59:22,530 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-27 22:59:22,530 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 87 transitions. [2022-04-27 22:59:22,530 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:59:22,530 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:59:22,530 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-27 22:59:22,531 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-27 22:59:22,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:59:22,533 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-27 22:59:22,533 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 87 transitions. [2022-04-27 22:59:22,533 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:59:22,533 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:59:22,533 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:59:22,533 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:59:22,534 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-27 22:59:22,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 66 transitions. [2022-04-27 22:59:22,535 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 66 transitions. Word has length 57 [2022-04-27 22:59:22,536 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:59:22,536 INFO L495 AbstractCegarLoop]: Abstraction has 56 states and 66 transitions. [2022-04-27 22:59:22,536 INFO L496 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-27 22:59:22,536 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 66 transitions. [2022-04-27 22:59:22,537 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-27 22:59:22,537 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:59:22,537 INFO L195 NwaCegarLoop]: 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-27 22:59:22,560 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-27 22:59:22,759 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:59:22,760 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:59:22,760 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:59:22,760 INFO L85 PathProgramCache]: Analyzing trace with hash 494880272, now seen corresponding path program 3 times [2022-04-27 22:59:22,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:59:22,760 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [982608431] [2022-04-27 22:59:22,760 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:59:22,760 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:59:22,775 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:59:22,775 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1166301375] [2022-04-27 22:59:22,775 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:59:22,775 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:59:22,775 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:59:22,776 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:59:22,799 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-27 22:59:23,098 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-27 22:59:23,098 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:59:23,100 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-27 22:59:23,125 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:59:23,130 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:59:42,288 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 22:59:52,239 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 22:59:58,282 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 23:01:02,978 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-27 23:01:02,979 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-27 23:01:02,979 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-27 23:01:02,979 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-27 23:01:02,979 INFO L272 TraceCheckUtils]: 4: Hoare triple {3248#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-27 23:01:02,979 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-27 23:01:02,979 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-27 23:01:02,979 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-27 23:01:02,980 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-27 23:01:02,980 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-27 23:01:02,981 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-27 23:01:02,981 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-27 23:01:02,981 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-27 23:01:02,981 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-27 23:01:02,982 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-27 23:01:02,982 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-27 23:01:02,983 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-27 23:01:02,983 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-27 23:01:02,984 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-27 23:01:02,984 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-27 23:01:02,984 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-27 23:01:02,984 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-27 23:01:02,984 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-27 23:01:02,985 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-27 23:01:02,985 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-27 23:01:02,985 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-27 23:01:02,986 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-27 23:01:02,986 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-27 23:01:02,986 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-27 23:01:02,986 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-27 23:01:02,986 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-27 23:01:02,986 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-27 23:01:02,987 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-27 23:01:02,988 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-27 23:01:02,989 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-27 23:01:02,989 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-27 23:01:02,990 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-27 23:01:02,990 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-27 23:01:02,990 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-27 23:01:02,990 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-27 23:01:02,990 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-27 23:01:02,991 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-27 23:01:02,991 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-27 23:01:02,992 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-27 23:01:02,993 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-27 23:01:02,993 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-27 23:01:02,994 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-27 23:01:02,994 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-27 23:01:02,994 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-27 23:01:02,994 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-27 23:01:02,996 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-27 23:01:02,996 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-27 23:01:03,320 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-27 23:01:03,331 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-27 23:01:03,332 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-27 23:01:03,332 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-27 23:01:03,332 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-27 23:01:03,333 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-27 23:01:03,333 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 23:01:09,837 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 23:01:17,561 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 23:01:56,531 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-27 23:01:56,532 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-27 23:01:56,532 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-27 23:01:56,533 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-27 23:01:56,534 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-27 23:01:56,535 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-27 23:01:56,536 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-27 23:01:56,536 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-27 23:01:56,537 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-27 23:01:56,537 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-27 23:01:56,537 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-27 23:01:58,539 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-27 23:01:58,550 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-27 23:02:01,114 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-27 23:02:01,141 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-27 23:02:01,141 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-27 23:02:01,141 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-27 23:02:01,141 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,142 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,143 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-27 23:02:01,144 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-27 23:02:01,144 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-27 23:02:01,144 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-27 23:02:01,144 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-27 23:02:01,144 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-27 23:02:01,144 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-27 23:02:01,144 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-27 23:02:01,144 INFO L272 TraceCheckUtils]: 4: Hoare triple {3248#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3248#true} is VALID [2022-04-27 23:02:01,144 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-27 23:02:01,144 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-27 23:02:01,144 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-27 23:02:01,144 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-27 23:02:01,145 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-27 23:02:01,145 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 23:02:01,145 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [982608431] [2022-04-27 23:02:01,145 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 23:02:01,145 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1166301375] [2022-04-27 23:02:01,145 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1166301375] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 23:02:01,145 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 23:02:01,145 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13] total 25 [2022-04-27 23:02:01,145 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1138375913] [2022-04-27 23:02:01,146 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 23:02:01,146 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-27 23:02:01,147 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 23:02:01,147 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-27 23:02:06,160 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-27 23:02:06,160 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-27 23:02:06,160 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 23:02:06,160 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-27 23:02:06,161 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=98, Invalid=498, Unknown=4, NotChecked=0, Total=600 [2022-04-27 23:02:06,161 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-27 23:02:17,787 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-27 23:02:34,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 23:02:34,005 INFO L93 Difference]: Finished difference Result 62 states and 74 transitions. [2022-04-27 23:02:34,005 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-27 23:02:34,005 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-27 23:02:34,005 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 23:02:34,005 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-27 23:02:34,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 45 transitions. [2022-04-27 23:02:34,007 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-27 23:02:34,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 45 transitions. [2022-04-27 23:02:34,008 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 45 transitions. [2022-04-27 23:02:37,975 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-27 23:02:37,976 INFO L225 Difference]: With dead ends: 62 [2022-04-27 23:02:37,976 INFO L226 Difference]: Without dead ends: 0 [2022-04-27 23:02:37,977 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 90 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 275 ImplicationChecksByTransitivity, 30.7s TimeCoverageRelationStatistics Valid=242, Invalid=1086, Unknown=4, NotChecked=0, Total=1332 [2022-04-27 23:02:37,977 INFO L413 NwaCegarLoop]: 16 mSDtfsCounter, 33 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 331 mSolverCounterSat, 16 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 7.0s 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.0s IncrementalHoareTripleChecker+Time [2022-04-27 23:02:37,977 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 169 Invalid, 398 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 331 Invalid, 1 Unknown, 50 Unchecked, 7.0s Time] [2022-04-27 23:02:37,978 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-27 23:02:37,978 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-27 23:02:37,978 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 23:02:37,978 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-27 23:02:37,978 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-27 23:02:37,978 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-27 23:02:37,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 23:02:37,978 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 23:02:37,978 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 23:02:37,979 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 23:02:37,979 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 23:02:37,979 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-27 23:02:37,979 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-27 23:02:37,979 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 23:02:37,979 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 23:02:37,979 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 23:02:37,979 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 23:02:37,979 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 23:02:37,979 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 23:02:37,979 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 23:02:37,980 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-27 23:02:37,980 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-27 23:02:37,980 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 57 [2022-04-27 23:02:37,980 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 23:02:37,980 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-27 23:02:37,980 INFO L496 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-27 23:02:37,980 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 23:02:37,980 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 23:02:37,983 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 23:02:37,991 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-27 23:02:38,188 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 23:02:38,190 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-27 23:03:06,578 WARN L232 SmtUtils]: Spent 28.27s on a formula simplification. DAG size of input: 114 DAG size of output: 38 (called from [L 149] de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.HoareAnnotationComposer.combineInter) [2022-04-27 23:03:13,160 WARN L232 SmtUtils]: Spent 6.55s 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-27 23:03:13,896 INFO L895 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-27 23:03:13,896 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-27 23:03:13,896 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-27 23:03:13,896 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-27 23:03:13,896 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-27 23:03:13,896 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-27 23:03:13,896 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-27 23:03:13,896 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 10 12) the Hoare annotation is: true [2022-04-27 23:03:13,896 INFO L899 garLoopResultBuilder]: For program point L11(line 11) no Hoare annotation was computed. [2022-04-27 23:03:13,896 INFO L899 garLoopResultBuilder]: For program point L11-2(lines 10 12) no Hoare annotation was computed. [2022-04-27 23:03:13,896 INFO L899 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 10 12) no Hoare annotation was computed. [2022-04-27 23:03:13,897 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 21 53) the Hoare annotation is: true [2022-04-27 23:03:13,897 INFO L902 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: true [2022-04-27 23:03:13,897 INFO L899 garLoopResultBuilder]: For program point L25-1(line 25) no Hoare annotation was computed. [2022-04-27 23:03:13,897 INFO L895 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: (and (<= main_~X~0 20) (<= 0 main_~X~0)) [2022-04-27 23:03:13,897 INFO L899 garLoopResultBuilder]: For program point L27-1(line 27) no Hoare annotation was computed. [2022-04-27 23:03:13,897 INFO L895 garLoopResultBuilder]: At program point L32-2(lines 32 47) the Hoare annotation is: (let ((.cse0 (<= main_~x~0 main_~X~0))) (and (or .cse0 (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))) (or .cse0 (forall ((main_~Y~0 Int)) (= (* 2 (* main_~y~0 main_~x~0)) (+ (* (* main_~X~0 main_~y~0) 2) (* main_~y~0 2))))) (<= 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)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))) [2022-04-27 23:03:13,897 INFO L899 garLoopResultBuilder]: For program point L32-3(lines 32 47) no Hoare annotation was computed. [2022-04-27 23:03:13,897 INFO L895 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-27 23:03:13,897 INFO L895 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-27 23:03:13,897 INFO L899 garLoopResultBuilder]: For program point L35-1(lines 32 47) no Hoare annotation was computed. [2022-04-27 23:03:13,897 INFO L899 garLoopResultBuilder]: For program point L50-1(line 50) no Hoare annotation was computed. [2022-04-27 23:03:13,898 INFO L899 garLoopResultBuilder]: For program point L40(lines 40 45) no Hoare annotation was computed. [2022-04-27 23:03:13,898 INFO L899 garLoopResultBuilder]: For program point mainFINAL(lines 21 53) no Hoare annotation was computed. [2022-04-27 23:03:13,898 INFO L899 garLoopResultBuilder]: For program point L40-2(lines 40 45) no Hoare annotation was computed. [2022-04-27 23:03:13,898 INFO L899 garLoopResultBuilder]: For program point mainEXIT(lines 21 53) no Hoare annotation was computed. [2022-04-27 23:03:13,898 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 13 19) the Hoare annotation is: true [2022-04-27 23:03:13,898 INFO L899 garLoopResultBuilder]: For program point L14(lines 14 17) no Hoare annotation was computed. [2022-04-27 23:03:13,898 INFO L899 garLoopResultBuilder]: For program point L15(lines 15 16) no Hoare annotation was computed. [2022-04-27 23:03:13,898 INFO L899 garLoopResultBuilder]: For program point L14-2(lines 13 19) no Hoare annotation was computed. [2022-04-27 23:03:13,898 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 16) no Hoare annotation was computed. [2022-04-27 23:03:13,898 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 13 19) no Hoare annotation was computed. [2022-04-27 23:03:13,900 INFO L356 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1, 1] [2022-04-27 23:03:13,901 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 23:03:13,904 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 23:03:13,904 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 23:03:13,904 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-27 23:03:13,904 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 23:03:13,904 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L11-2 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L14-2 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L25-1 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L50-1 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L32-3 has no Hoare annotation [2022-04-27 23:03:13,905 WARN L170 areAnnotationChecker]: L32-3 has no Hoare annotation [2022-04-27 23:03:13,909 WARN L170 areAnnotationChecker]: L32-3 has no Hoare annotation [2022-04-27 23:03:13,909 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 23:03:13,909 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 23:03:13,909 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-27 23:03:13,909 WARN L170 areAnnotationChecker]: L40-2 has no Hoare annotation [2022-04-27 23:03:13,909 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 23:03:13,909 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 23:03:13,909 INFO L163 areAnnotationChecker]: CFG has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-27 23:03:13,914 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-27 23:03:13,914 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-27 23:03:13,920 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-27 23:03:13,920 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-27 23:03:13,921 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 11:03:13 BasicIcfg [2022-04-27 23:03:13,921 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 23:03:13,921 INFO L158 Benchmark]: Toolchain (without parser) took 305542.59ms. Allocated memory was 174.1MB in the beginning and 209.7MB in the end (delta: 35.7MB). Free memory was 124.3MB in the beginning and 172.8MB in the end (delta: -48.5MB). Peak memory consumption was 96.7MB. Max. memory is 8.0GB. [2022-04-27 23:03:13,922 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 174.1MB. Free memory is still 140.6MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 23:03:13,922 INFO L158 Benchmark]: CACSL2BoogieTranslator took 245.38ms. Allocated memory is still 174.1MB. Free memory was 124.1MB in the beginning and 153.1MB in the end (delta: -28.9MB). Peak memory consumption was 8.4MB. Max. memory is 8.0GB. [2022-04-27 23:03:13,922 INFO L158 Benchmark]: Boogie Preprocessor took 39.15ms. Allocated memory is still 174.1MB. Free memory was 153.1MB in the beginning and 151.6MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-27 23:03:13,922 INFO L158 Benchmark]: RCFGBuilder took 261.55ms. Allocated memory is still 174.1MB. Free memory was 151.6MB in the beginning and 139.1MB in the end (delta: 12.5MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-27 23:03:13,923 INFO L158 Benchmark]: IcfgTransformer took 48.36ms. Allocated memory is still 174.1MB. Free memory was 139.1MB in the beginning and 137.4MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-27 23:03:13,923 INFO L158 Benchmark]: TraceAbstraction took 304930.56ms. Allocated memory was 174.1MB in the beginning and 209.7MB in the end (delta: 35.7MB). Free memory was 136.9MB in the beginning and 172.8MB in the end (delta: -35.9MB). Peak memory consumption was 109.4MB. Max. memory is 8.0GB. [2022-04-27 23:03:13,924 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.11ms. Allocated memory is still 174.1MB. Free memory is still 140.6MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 245.38ms. Allocated memory is still 174.1MB. Free memory was 124.1MB in the beginning and 153.1MB in the end (delta: -28.9MB). Peak memory consumption was 8.4MB. Max. memory is 8.0GB. * Boogie Preprocessor took 39.15ms. Allocated memory is still 174.1MB. Free memory was 153.1MB in the beginning and 151.6MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 261.55ms. Allocated memory is still 174.1MB. Free memory was 151.6MB in the beginning and 139.1MB in the end (delta: 12.5MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 48.36ms. Allocated memory is still 174.1MB. Free memory was 139.1MB in the beginning and 137.4MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 304930.56ms. Allocated memory was 174.1MB in the beginning and 209.7MB in the end (delta: 35.7MB). Free memory was 136.9MB in the beginning and 172.8MB in the end (delta: -35.9MB). Peak memory consumption was 109.4MB. 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: 304.9s, OverallIterations: 8, TraceHistogramMax: 5, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 54.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 35.7s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 7 mSolverCounterUnknown, 151 SdHoareTripleChecker+Valid, 20.3s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 143 mSDsluCounter, 1078 SdHoareTripleChecker+Invalid, 20.3s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 148 IncrementalHoareTripleChecker+Unchecked, 886 mSDsCounter, 96 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1299 IncrementalHoareTripleChecker+Invalid, 1550 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 96 mSolverCounterUnsat, 192 mSDtfsCounter, 1299 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 634 GetRequests, 493 SyntacticMatches, 6 SemanticMatches, 135 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 666 ImplicationChecksByTransitivity, 36.6s 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, 259 HoareAnnotationTreeSize, 29 FomulaSimplifications, 792 FormulaSimplificationTreeSizeReduction, 0.1s HoareSimplificationTime, 11 FomulaSimplificationsInter, 4663 FormulaSimplificationTreeSizeReductionInter, 35.6s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.5s SatisfiabilityAnalysisTime, 204.5s 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-27 23:03:13,929 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-27 23:03:13,929 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-27 23:03:13,935 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] [2022-04-27 23:03:13,935 WARN L418 cessorBacktranslator]: Identifier is quantified, using identity as back-translation of IdentifierExpression[main_~y~0,QUANTIFIED] Derived loop invariant: (((((((x <= X || (forall main_~y~0 : int :: 2 * (main_~y~0 * x) + X + v == main_~y~0 * 2 + Y * 2 + 2 * (Y * x))) || !(X == 0)) && (x <= X || (forall main_~Y~0 : int :: 2 * (y * x) == X * y * 2 + y * 2))) && X <= 20) && Y * 2 + 2 * (Y * x) == X * y * 2 + X + v) && 0 <= Y) && Y <= 20) && 0 <= X RESULT: Ultimate proved your program to be correct! [2022-04-27 23:03:14,139 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-27 23:03:14,147 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 0 Received shutdown request...