/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/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 17:32:12,732 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 17:32:12,746 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 17:32:12,793 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 17:32:12,793 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 17:32:12,794 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 17:32:12,794 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 17:32:12,796 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 17:32:12,797 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 17:32:12,797 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 17:32:12,798 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 17:32:12,799 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 17:32:12,799 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 17:32:12,800 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 17:32:12,800 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 17:32:12,801 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 17:32:12,801 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 17:32:12,802 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 17:32:12,803 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 17:32:12,805 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 17:32:12,806 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 17:32:12,807 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 17:32:12,807 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 17:32:12,808 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 17:32:12,809 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 17:32:12,811 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 17:32:12,811 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 17:32:12,811 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 17:32:12,812 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 17:32:12,812 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 17:32:12,813 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 17:32:12,813 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 17:32:12,813 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 17:32:12,814 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 17:32:12,814 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 17:32:12,815 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 17:32:12,815 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 17:32:12,815 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 17:32:12,816 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 17:32:12,816 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 17:32:12,816 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 17:32:12,823 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 17:32:12,824 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-27 17:32:12,830 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 17:32:12,830 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 17:32:12,831 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 17:32:12,831 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 17:32:12,831 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 17:32:12,831 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 17:32:12,831 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 17:32:12,831 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 17:32:12,831 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 17:32:12,831 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 17:32:12,832 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 17:32:12,832 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 17:32:12,832 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 17:32:12,832 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 17:32:12,832 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 17:32:12,832 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 17:32:12,832 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-27 17:32:12,832 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 17:32:12,832 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 17:32:12,833 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 17:32:12,833 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 17:32:12,833 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-27 17:32:12,833 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN 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 17:32:13,026 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 17:32:13,041 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 17:32:13,043 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 17:32:13,043 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 17:32:13,044 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 17:32:13,045 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 17:32:13,092 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/36a40fb6e/625eb39070e64fbca5e523eb623a5788/FLAG64e895fc5 [2022-04-27 17:32:13,461 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 17:32:13,461 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c [2022-04-27 17:32:13,467 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/36a40fb6e/625eb39070e64fbca5e523eb623a5788/FLAG64e895fc5 [2022-04-27 17:32:13,480 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/36a40fb6e/625eb39070e64fbca5e523eb623a5788 [2022-04-27 17:32:13,489 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 17:32:13,491 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-27 17:32:13,492 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 17:32:13,492 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 17:32:13,495 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 17:32:13,499 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 05:32:13" (1/1) ... [2022-04-27 17:32:13,500 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@18cc845f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:32:13, skipping insertion in model container [2022-04-27 17:32:13,500 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 05:32:13" (1/1) ... [2022-04-27 17:32:13,516 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 17:32:13,526 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 17:32:13,676 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 17:32:13,704 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 17:32:13,709 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 17:32:13,721 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 17:32:13,742 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 17:32:13,751 INFO L208 MainTranslator]: Completed translation [2022-04-27 17:32:13,751 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:32:13 WrapperNode [2022-04-27 17:32:13,751 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 17:32:13,752 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 17:32:13,752 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 17:32:13,752 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 17:32:13,759 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:32:13" (1/1) ... [2022-04-27 17:32:13,759 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:32:13" (1/1) ... [2022-04-27 17:32:13,764 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:32:13" (1/1) ... [2022-04-27 17:32:13,764 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:32:13" (1/1) ... [2022-04-27 17:32:13,774 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:32:13" (1/1) ... [2022-04-27 17:32:13,778 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:32:13" (1/1) ... [2022-04-27 17:32:13,782 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:32:13" (1/1) ... [2022-04-27 17:32:13,784 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 17:32:13,786 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 17:32:13,786 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 17:32:13,786 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 17:32:13,786 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:32:13" (1/1) ... [2022-04-27 17:32:13,791 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 17:32:13,798 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:32:13,806 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 17:32:13,808 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 17:32:13,831 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 17:32:13,831 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 17:32:13,831 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 17:32:13,831 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 17:32:13,832 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 17:32:13,832 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 17:32:13,832 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 17:32:13,832 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 17:32:13,832 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 17:32:13,832 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 17:32:13,832 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 17:32:13,832 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 17:32:13,832 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 17:32:13,833 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 17:32:13,833 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 17:32:13,833 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 17:32:13,834 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 17:32:13,834 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 17:32:13,834 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 17:32:13,834 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 17:32:13,879 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 17:32:13,880 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 17:32:14,068 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 17:32:14,072 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 17:32:14,072 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 17:32:14,074 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 05:32:14 BoogieIcfgContainer [2022-04-27 17:32:14,074 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 17:32:14,074 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-27 17:32:14,074 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-27 17:32:14,078 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-27 17:32:14,081 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 05:32:14" (1/1) ... [2022-04-27 17:32:14,082 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-27 17:32:14,110 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 05:32:14 BasicIcfg [2022-04-27 17:32:14,110 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-27 17:32:14,111 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 17:32:14,111 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 17:32:14,113 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 17:32:14,113 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 05:32:13" (1/4) ... [2022-04-27 17:32:14,113 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6bf2c3f9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 05:32:14, skipping insertion in model container [2022-04-27 17:32:14,113 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:32:13" (2/4) ... [2022-04-27 17:32:14,113 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6bf2c3f9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 05:32:14, skipping insertion in model container [2022-04-27 17:32:14,114 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 05:32:14" (3/4) ... [2022-04-27 17:32:14,114 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6bf2c3f9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 05:32:14, skipping insertion in model container [2022-04-27 17:32:14,114 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 05:32:14" (4/4) ... [2022-04-27 17:32:14,114 INFO L111 eAbstractionObserver]: Analyzing ICFG bresenham-ll_valuebound20.cJordan [2022-04-27 17:32:14,123 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-27 17:32:14,123 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 17:32:14,151 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 17:32:14,155 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@766030ca, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@8b7fc4f [2022-04-27 17:32:14,155 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 17:32:14,160 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 17:32:14,164 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 17:32:14,164 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:32:14,164 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 17:32:14,165 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:32:14,168 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:32:14,168 INFO L85 PathProgramCache]: Analyzing trace with hash -1563578423, now seen corresponding path program 1 times [2022-04-27 17:32:14,174 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:32:14,174 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2068993832] [2022-04-27 17:32:14,174 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:32:14,175 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:32:14,261 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:14,316 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 17:32:14,327 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:14,335 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 17:32:14,335 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 17:32:14,336 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 17:32:14,336 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 17:32:14,337 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:14,342 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 17:32:14,343 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 17:32:14,343 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 17:32:14,343 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 17:32:14,343 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 17:32:14,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:14,352 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 17:32:14,353 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 17:32:14,353 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 17:32:14,354 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 17:32:14,354 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 17:32:14,355 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 17:32:14,355 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 17:32:14,355 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 17:32:14,355 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 17:32:14,355 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 17:32:14,356 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 17:32:14,356 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 17:32:14,356 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 17:32:14,356 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 17:32:14,357 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 17:32:14,357 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 17:32:14,357 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 17:32:14,357 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 17:32:14,359 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 17:32:14,359 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 17:32:14,359 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 17:32:14,359 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 17:32:14,360 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 17:32:14,360 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 17:32:14,360 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 17:32:14,360 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 17:32:14,360 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 17:32:14,361 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 17:32:14,361 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:32:14,361 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2068993832] [2022-04-27 17:32:14,362 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2068993832] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 17:32:14,362 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 17:32:14,362 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 17:32:14,363 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1933991778] [2022-04-27 17:32:14,364 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 17:32:14,367 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 17:32:14,368 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:32:14,370 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 17:32:14,395 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 17:32:14,395 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 17:32:14,396 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:32:14,409 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 17:32:14,410 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 17:32:14,411 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 17:32:14,504 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:14,504 INFO L93 Difference]: Finished difference Result 32 states and 35 transitions. [2022-04-27 17:32:14,504 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 17:32:14,504 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 17:32:14,505 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:32:14,506 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 17:32:14,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 39 transitions. [2022-04-27 17:32:14,513 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 17:32:14,515 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 39 transitions. [2022-04-27 17:32:14,515 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 39 transitions. [2022-04-27 17:32:14,565 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:32:14,572 INFO L225 Difference]: With dead ends: 32 [2022-04-27 17:32:14,572 INFO L226 Difference]: Without dead ends: 27 [2022-04-27 17:32:14,573 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 17:32:14,575 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 17:32:14,577 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 17:32:14,588 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-27 17:32:14,598 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-27 17:32:14,598 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:32:14,598 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 17:32:14,599 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 17:32:14,599 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 17:32:14,602 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:14,602 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-27 17:32:14,602 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-27 17:32:14,603 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:32:14,603 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:32:14,603 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 17:32:14,604 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 17:32:14,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:14,606 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-27 17:32:14,606 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-27 17:32:14,606 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:32:14,606 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:32:14,606 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:32:14,606 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:32:14,607 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 17:32:14,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-04-27 17:32:14,609 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 23 [2022-04-27 17:32:14,609 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:32:14,609 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-04-27 17:32:14,609 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 17:32:14,609 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-27 17:32:14,610 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 17:32:14,610 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:32:14,610 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 17:32:14,610 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 17:32:14,610 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:32:14,611 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:32:14,611 INFO L85 PathProgramCache]: Analyzing trace with hash -1863481077, now seen corresponding path program 1 times [2022-04-27 17:32:14,611 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:32:14,611 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [316432694] [2022-04-27 17:32:14,611 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:32:14,611 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:32:14,637 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:32:14,637 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1190790182] [2022-04-27 17:32:14,637 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:32:14,637 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:32:14,637 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:32:14,639 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 17:32:14,649 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 17:32:14,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:14,693 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 17:32:14,722 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:14,725 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:32:14,896 INFO L272 TraceCheckUtils]: 0: Hoare triple {164#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-27 17:32:14,896 INFO L290 TraceCheckUtils]: 1: Hoare triple {164#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] {164#true} is VALID [2022-04-27 17:32:14,896 INFO L290 TraceCheckUtils]: 2: Hoare triple {164#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-27 17:32:14,896 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {164#true} {164#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-27 17:32:14,897 INFO L272 TraceCheckUtils]: 4: Hoare triple {164#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-27 17:32:14,897 INFO L290 TraceCheckUtils]: 5: Hoare triple {164#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] {164#true} is VALID [2022-04-27 17:32:14,897 INFO L272 TraceCheckUtils]: 6: Hoare triple {164#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] {164#true} is VALID [2022-04-27 17:32:14,897 INFO L290 TraceCheckUtils]: 7: Hoare triple {164#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] {164#true} is VALID [2022-04-27 17:32:14,897 INFO L290 TraceCheckUtils]: 8: Hoare triple {164#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[] {164#true} is VALID [2022-04-27 17:32:14,897 INFO L290 TraceCheckUtils]: 9: Hoare triple {164#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-27 17:32:14,898 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {164#true} {164#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] {164#true} is VALID [2022-04-27 17:32:14,898 INFO L290 TraceCheckUtils]: 11: Hoare triple {164#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] {164#true} is VALID [2022-04-27 17:32:14,898 INFO L272 TraceCheckUtils]: 12: Hoare triple {164#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] {164#true} is VALID [2022-04-27 17:32:14,898 INFO L290 TraceCheckUtils]: 13: Hoare triple {164#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] {164#true} is VALID [2022-04-27 17:32:14,898 INFO L290 TraceCheckUtils]: 14: Hoare triple {164#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[] {164#true} is VALID [2022-04-27 17:32:14,899 INFO L290 TraceCheckUtils]: 15: Hoare triple {164#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-27 17:32:14,899 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {164#true} {164#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] {164#true} is VALID [2022-04-27 17:32:14,904 INFO L290 TraceCheckUtils]: 17: Hoare triple {164#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] {220#(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 17:32:14,904 INFO L290 TraceCheckUtils]: 18: Hoare triple {220#(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] {224#(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 17:32:14,905 INFO L272 TraceCheckUtils]: 19: Hoare triple {224#(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] {228#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:32:14,906 INFO L290 TraceCheckUtils]: 20: Hoare triple {228#(<= 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] {232#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:32:14,906 INFO L290 TraceCheckUtils]: 21: Hoare triple {232#(<= 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[] {165#false} is VALID [2022-04-27 17:32:14,906 INFO L290 TraceCheckUtils]: 22: Hoare triple {165#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165#false} is VALID [2022-04-27 17:32:14,907 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 17:32:14,907 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 17:32:14,907 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:32:14,907 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [316432694] [2022-04-27 17:32:14,907 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:32:14,907 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1190790182] [2022-04-27 17:32:14,907 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1190790182] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 17:32:14,908 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 17:32:14,908 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 17:32:14,908 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1371146908] [2022-04-27 17:32:14,908 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 17:32:14,909 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 17:32:14,909 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:32:14,909 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 17:32:14,923 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 17:32:14,924 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 17:32:14,924 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:32:14,924 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 17:32:14,924 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 17:32:14,925 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 17:32:15,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:15,105 INFO L93 Difference]: Finished difference Result 37 states and 42 transitions. [2022-04-27 17:32:15,106 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 17:32:15,106 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 17:32:15,106 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:32:15,106 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 17:32:15,113 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-27 17:32:15,113 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 17:32:15,118 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-27 17:32:15,118 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 43 transitions. [2022-04-27 17:32:15,150 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:32:15,153 INFO L225 Difference]: With dead ends: 37 [2022-04-27 17:32:15,153 INFO L226 Difference]: Without dead ends: 35 [2022-04-27 17:32:15,154 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-27 17:32:15,156 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 10 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 61 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 66 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 61 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 17:32:15,156 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 17:32:15,158 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-27 17:32:15,161 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 34. [2022-04-27 17:32:15,161 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:32:15,162 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 17:32:15,162 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 17:32:15,164 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 17:32:15,178 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:15,178 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-27 17:32:15,178 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-27 17:32:15,179 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:32:15,179 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:32:15,179 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 17:32:15,179 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 35 states. [2022-04-27 17:32:15,182 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:15,182 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-27 17:32:15,182 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-27 17:32:15,182 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:32:15,182 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:32:15,182 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:32:15,183 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:32:15,183 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 17:32:15,184 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 37 transitions. [2022-04-27 17:32:15,184 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 37 transitions. Word has length 23 [2022-04-27 17:32:15,184 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:32:15,184 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 37 transitions. [2022-04-27 17:32:15,185 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 17:32:15,185 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 37 transitions. [2022-04-27 17:32:15,185 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-27 17:32:15,185 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:32:15,185 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 17:32:15,201 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 17:32:15,397 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 17:32:15,397 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:32:15,398 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:32:15,398 INFO L85 PathProgramCache]: Analyzing trace with hash -646008129, now seen corresponding path program 1 times [2022-04-27 17:32:15,398 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:32:15,398 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [398246129] [2022-04-27 17:32:15,398 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:32:15,398 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:32:15,412 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:32:15,413 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [943623331] [2022-04-27 17:32:15,413 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:32:15,413 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:32:15,413 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:32:15,414 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 17:32:15,415 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-27 17:32:15,454 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:15,455 INFO L263 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 17:32:15,465 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:15,465 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:32:15,655 INFO L272 TraceCheckUtils]: 0: Hoare triple {383#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,656 INFO L290 TraceCheckUtils]: 1: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,656 INFO L290 TraceCheckUtils]: 2: Hoare triple {383#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,656 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {383#true} {383#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,656 INFO L272 TraceCheckUtils]: 4: Hoare triple {383#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,656 INFO L290 TraceCheckUtils]: 5: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,656 INFO L272 TraceCheckUtils]: 6: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,656 INFO L290 TraceCheckUtils]: 7: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,657 INFO L290 TraceCheckUtils]: 8: Hoare triple {383#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[] {383#true} is VALID [2022-04-27 17:32:15,657 INFO L290 TraceCheckUtils]: 9: Hoare triple {383#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,657 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {383#true} {383#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] {383#true} is VALID [2022-04-27 17:32:15,657 INFO L290 TraceCheckUtils]: 11: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,657 INFO L272 TraceCheckUtils]: 12: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,657 INFO L290 TraceCheckUtils]: 13: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,657 INFO L290 TraceCheckUtils]: 14: Hoare triple {383#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[] {383#true} is VALID [2022-04-27 17:32:15,657 INFO L290 TraceCheckUtils]: 15: Hoare triple {383#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,658 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {383#true} {383#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] {383#true} is VALID [2022-04-27 17:32:15,658 INFO L290 TraceCheckUtils]: 17: Hoare triple {383#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] {439#(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 17:32:15,659 INFO L290 TraceCheckUtils]: 18: Hoare triple {439#(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] {439#(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 17:32:15,659 INFO L272 TraceCheckUtils]: 19: Hoare triple {439#(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] {383#true} is VALID [2022-04-27 17:32:15,659 INFO L290 TraceCheckUtils]: 20: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,659 INFO L290 TraceCheckUtils]: 21: Hoare triple {383#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[] {383#true} is VALID [2022-04-27 17:32:15,659 INFO L290 TraceCheckUtils]: 22: Hoare triple {383#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,660 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {383#true} {439#(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] {439#(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 17:32:15,661 INFO L290 TraceCheckUtils]: 24: Hoare triple {439#(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[] {439#(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 17:32:15,661 INFO L290 TraceCheckUtils]: 25: Hoare triple {439#(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] {464#(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 17:32:15,662 INFO L290 TraceCheckUtils]: 26: Hoare triple {464#(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] {468#(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 17:32:15,663 INFO L290 TraceCheckUtils]: 27: Hoare triple {468#(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] {472#(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 17:32:15,663 INFO L272 TraceCheckUtils]: 28: Hoare triple {472#(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] {476#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:32:15,664 INFO L290 TraceCheckUtils]: 29: Hoare triple {476#(<= 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] {480#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:32:15,664 INFO L290 TraceCheckUtils]: 30: Hoare triple {480#(<= 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[] {384#false} is VALID [2022-04-27 17:32:15,664 INFO L290 TraceCheckUtils]: 31: Hoare triple {384#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {384#false} is VALID [2022-04-27 17:32:15,665 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 17:32:15,665 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:32:15,840 INFO L290 TraceCheckUtils]: 31: Hoare triple {384#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {384#false} is VALID [2022-04-27 17:32:15,840 INFO L290 TraceCheckUtils]: 30: Hoare triple {480#(<= 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[] {384#false} is VALID [2022-04-27 17:32:15,841 INFO L290 TraceCheckUtils]: 29: Hoare triple {476#(<= 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] {480#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:32:15,842 INFO L272 TraceCheckUtils]: 28: Hoare triple {496#(= (+ (* 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] {476#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:32:15,843 INFO L290 TraceCheckUtils]: 27: Hoare triple {500#(= (+ (* 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] {496#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} is VALID [2022-04-27 17:32:15,844 INFO L290 TraceCheckUtils]: 26: Hoare triple {504#(= (+ (* (* 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] {500#(= (+ (* 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 17:32:15,845 INFO L290 TraceCheckUtils]: 25: Hoare triple {500#(= (+ (* 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] {504#(= (+ (* (* 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 17:32:15,845 INFO L290 TraceCheckUtils]: 24: Hoare triple {500#(= (+ (* 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[] {500#(= (+ (* 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 17:32:15,846 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {383#true} {500#(= (+ (* 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] {500#(= (+ (* 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 17:32:15,846 INFO L290 TraceCheckUtils]: 22: Hoare triple {383#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,846 INFO L290 TraceCheckUtils]: 21: Hoare triple {383#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[] {383#true} is VALID [2022-04-27 17:32:15,846 INFO L290 TraceCheckUtils]: 20: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,846 INFO L272 TraceCheckUtils]: 19: Hoare triple {500#(= (+ (* 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] {383#true} is VALID [2022-04-27 17:32:15,847 INFO L290 TraceCheckUtils]: 18: Hoare triple {500#(= (+ (* 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] {500#(= (+ (* 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 17:32:15,849 INFO L290 TraceCheckUtils]: 17: Hoare triple {383#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] {500#(= (+ (* 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 17:32:15,849 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {383#true} {383#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] {383#true} is VALID [2022-04-27 17:32:15,849 INFO L290 TraceCheckUtils]: 15: Hoare triple {383#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,849 INFO L290 TraceCheckUtils]: 14: Hoare triple {383#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[] {383#true} is VALID [2022-04-27 17:32:15,849 INFO L290 TraceCheckUtils]: 13: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,849 INFO L272 TraceCheckUtils]: 12: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,849 INFO L290 TraceCheckUtils]: 11: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,850 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {383#true} {383#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] {383#true} is VALID [2022-04-27 17:32:15,850 INFO L290 TraceCheckUtils]: 9: Hoare triple {383#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,850 INFO L290 TraceCheckUtils]: 8: Hoare triple {383#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[] {383#true} is VALID [2022-04-27 17:32:15,850 INFO L290 TraceCheckUtils]: 7: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,850 INFO L272 TraceCheckUtils]: 6: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,850 INFO L290 TraceCheckUtils]: 5: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,850 INFO L272 TraceCheckUtils]: 4: Hoare triple {383#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,851 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {383#true} {383#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,851 INFO L290 TraceCheckUtils]: 2: Hoare triple {383#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,851 INFO L290 TraceCheckUtils]: 1: Hoare triple {383#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] {383#true} is VALID [2022-04-27 17:32:15,851 INFO L272 TraceCheckUtils]: 0: Hoare triple {383#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-27 17:32:15,851 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 17:32:15,851 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:32:15,851 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [398246129] [2022-04-27 17:32:15,852 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:32:15,852 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [943623331] [2022-04-27 17:32:15,852 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [943623331] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:32:15,852 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:32:15,852 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-27 17:32:15,852 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [433520560] [2022-04-27 17:32:15,852 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:32:15,853 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 17:32:15,853 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:32:15,853 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 17:32:15,883 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 17:32:15,883 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 17:32:15,883 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:32:15,884 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 17:32:15,884 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 17:32:15,884 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 17:32:16,312 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:16,313 INFO L93 Difference]: Finished difference Result 46 states and 52 transitions. [2022-04-27 17:32:16,313 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 17:32:16,313 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 17:32:16,313 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:32:16,313 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 17:32:16,315 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 50 transitions. [2022-04-27 17:32:16,315 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 17:32:16,316 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 50 transitions. [2022-04-27 17:32:16,317 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 50 transitions. [2022-04-27 17:32:16,364 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:32:16,366 INFO L225 Difference]: With dead ends: 46 [2022-04-27 17:32:16,366 INFO L226 Difference]: Without dead ends: 42 [2022-04-27 17:32:16,366 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 17:32:16,367 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 14 mSDsluCounter, 88 mSDsCounter, 0 mSdLazyCounter, 157 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 167 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 157 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 17:32:16,367 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 110 Invalid, 167 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 157 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 17:32:16,367 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-04-27 17:32:16,369 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2022-04-27 17:32:16,370 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:32:16,370 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 17:32:16,370 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 17:32:16,370 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 17:32:16,372 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:16,372 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-27 17:32:16,372 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-27 17:32:16,372 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:32:16,372 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:32:16,373 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 17:32:16,373 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 17:32:16,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:16,374 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-27 17:32:16,374 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-27 17:32:16,375 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:32:16,375 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:32:16,375 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:32:16,375 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:32:16,375 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 17:32:16,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-27 17:32:16,376 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 32 [2022-04-27 17:32:16,377 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:32:16,377 INFO L495 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-27 17:32:16,377 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 17:32:16,377 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-27 17:32:16,377 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 17:32:16,378 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:32:16,378 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 17:32:16,406 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 17:32:16,595 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 17:32:16,596 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:32:16,596 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:32:16,596 INFO L85 PathProgramCache]: Analyzing trace with hash -1661983408, now seen corresponding path program 1 times [2022-04-27 17:32:16,596 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:32:16,596 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [156590380] [2022-04-27 17:32:16,596 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:32:16,597 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:32:16,610 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:32:16,610 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [728534227] [2022-04-27 17:32:16,610 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:32:16,610 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:32:16,610 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:32:16,611 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 17:32:16,612 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 17:32:16,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:16,649 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-27 17:32:16,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:16,662 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:32:17,012 INFO L272 TraceCheckUtils]: 0: Hoare triple {764#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,012 INFO L290 TraceCheckUtils]: 1: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,012 INFO L290 TraceCheckUtils]: 2: Hoare triple {764#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,013 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {764#true} {764#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,013 INFO L272 TraceCheckUtils]: 4: Hoare triple {764#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,013 INFO L290 TraceCheckUtils]: 5: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,013 INFO L272 TraceCheckUtils]: 6: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,013 INFO L290 TraceCheckUtils]: 7: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,013 INFO L290 TraceCheckUtils]: 8: Hoare triple {764#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[] {764#true} is VALID [2022-04-27 17:32:17,013 INFO L290 TraceCheckUtils]: 9: Hoare triple {764#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,013 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {764#true} {764#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] {764#true} is VALID [2022-04-27 17:32:17,014 INFO L290 TraceCheckUtils]: 11: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,014 INFO L272 TraceCheckUtils]: 12: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,014 INFO L290 TraceCheckUtils]: 13: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,014 INFO L290 TraceCheckUtils]: 14: Hoare triple {764#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[] {764#true} is VALID [2022-04-27 17:32:17,014 INFO L290 TraceCheckUtils]: 15: Hoare triple {764#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,014 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {764#true} {764#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] {764#true} is VALID [2022-04-27 17:32:17,014 INFO L290 TraceCheckUtils]: 17: Hoare triple {764#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] {820#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 17:32:17,016 INFO L290 TraceCheckUtils]: 18: Hoare triple {820#(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] {820#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 17:32:17,016 INFO L272 TraceCheckUtils]: 19: Hoare triple {820#(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] {764#true} is VALID [2022-04-27 17:32:17,016 INFO L290 TraceCheckUtils]: 20: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,016 INFO L290 TraceCheckUtils]: 21: Hoare triple {764#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[] {764#true} is VALID [2022-04-27 17:32:17,016 INFO L290 TraceCheckUtils]: 22: Hoare triple {764#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,017 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {764#true} {820#(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] {820#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 17:32:17,017 INFO L290 TraceCheckUtils]: 24: Hoare triple {820#(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[] {842#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 17:32:17,018 INFO L290 TraceCheckUtils]: 25: Hoare triple {842#(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] {846#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 1))} is VALID [2022-04-27 17:32:17,018 INFO L290 TraceCheckUtils]: 26: Hoare triple {846#(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] {850#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-27 17:32:17,019 INFO L290 TraceCheckUtils]: 27: Hoare triple {850#(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] {854#(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 17:32:17,019 INFO L272 TraceCheckUtils]: 28: Hoare triple {854#(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] {764#true} is VALID [2022-04-27 17:32:17,019 INFO L290 TraceCheckUtils]: 29: Hoare triple {764#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] {861#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:32:17,020 INFO L290 TraceCheckUtils]: 30: Hoare triple {861#(= |__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[] {865#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:32:17,021 INFO L290 TraceCheckUtils]: 31: Hoare triple {865#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {865#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:32:17,022 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {865#(not (= |__VERIFIER_assert_#in~cond| 0))} {854#(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] {872#(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 17:32:17,022 INFO L290 TraceCheckUtils]: 33: Hoare triple {872#(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[] {876#(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 17:32:17,024 INFO L290 TraceCheckUtils]: 34: Hoare triple {876#(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] {880#(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 17:32:17,025 INFO L272 TraceCheckUtils]: 35: Hoare triple {880#(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] {884#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:32:17,025 INFO L290 TraceCheckUtils]: 36: Hoare triple {884#(<= 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] {888#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:32:17,025 INFO L290 TraceCheckUtils]: 37: Hoare triple {888#(<= 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[] {765#false} is VALID [2022-04-27 17:32:17,026 INFO L290 TraceCheckUtils]: 38: Hoare triple {765#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {765#false} is VALID [2022-04-27 17:32:17,026 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 17:32:17,026 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:32:17,673 INFO L290 TraceCheckUtils]: 38: Hoare triple {765#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {765#false} is VALID [2022-04-27 17:32:17,673 INFO L290 TraceCheckUtils]: 37: Hoare triple {888#(<= 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[] {765#false} is VALID [2022-04-27 17:32:17,674 INFO L290 TraceCheckUtils]: 36: Hoare triple {884#(<= 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] {888#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:32:17,675 INFO L272 TraceCheckUtils]: 35: Hoare triple {904#(= (+ (* 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] {884#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:32:17,675 INFO L290 TraceCheckUtils]: 34: Hoare triple {908#(= (+ (* 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] {904#(= (+ (* 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 17:32:17,676 INFO L290 TraceCheckUtils]: 33: Hoare triple {912#(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[] {908#(= (+ (* 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 17:32:17,677 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {865#(not (= |__VERIFIER_assert_#in~cond| 0))} {916#(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] {912#(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 17:32:17,677 INFO L290 TraceCheckUtils]: 31: Hoare triple {865#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {865#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:32:17,677 INFO L290 TraceCheckUtils]: 30: Hoare triple {926#(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[] {865#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:32:17,677 INFO L290 TraceCheckUtils]: 29: Hoare triple {764#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] {926#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 17:32:17,678 INFO L272 TraceCheckUtils]: 28: Hoare triple {916#(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] {764#true} is VALID [2022-04-27 17:32:17,679 INFO L290 TraceCheckUtils]: 27: Hoare triple {933#(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] {916#(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 17:32:17,680 INFO L290 TraceCheckUtils]: 26: Hoare triple {937#(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] {933#(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 17:32:17,682 INFO L290 TraceCheckUtils]: 25: Hoare triple {941#(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] {937#(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 17:32:17,683 INFO L290 TraceCheckUtils]: 24: Hoare triple {764#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[] {941#(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 17:32:17,683 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {764#true} {764#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] {764#true} is VALID [2022-04-27 17:32:17,683 INFO L290 TraceCheckUtils]: 22: Hoare triple {764#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,684 INFO L290 TraceCheckUtils]: 21: Hoare triple {764#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[] {764#true} is VALID [2022-04-27 17:32:17,684 INFO L290 TraceCheckUtils]: 20: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,684 INFO L272 TraceCheckUtils]: 19: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,684 INFO L290 TraceCheckUtils]: 18: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,684 INFO L290 TraceCheckUtils]: 17: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,684 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {764#true} {764#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] {764#true} is VALID [2022-04-27 17:32:17,684 INFO L290 TraceCheckUtils]: 15: Hoare triple {764#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,684 INFO L290 TraceCheckUtils]: 14: Hoare triple {764#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[] {764#true} is VALID [2022-04-27 17:32:17,685 INFO L290 TraceCheckUtils]: 13: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,685 INFO L272 TraceCheckUtils]: 12: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,685 INFO L290 TraceCheckUtils]: 11: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,685 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {764#true} {764#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] {764#true} is VALID [2022-04-27 17:32:17,685 INFO L290 TraceCheckUtils]: 9: Hoare triple {764#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,685 INFO L290 TraceCheckUtils]: 8: Hoare triple {764#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[] {764#true} is VALID [2022-04-27 17:32:17,685 INFO L290 TraceCheckUtils]: 7: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,685 INFO L272 TraceCheckUtils]: 6: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,685 INFO L290 TraceCheckUtils]: 5: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,686 INFO L272 TraceCheckUtils]: 4: Hoare triple {764#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,686 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {764#true} {764#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,686 INFO L290 TraceCheckUtils]: 2: Hoare triple {764#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,686 INFO L290 TraceCheckUtils]: 1: Hoare triple {764#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] {764#true} is VALID [2022-04-27 17:32:17,686 INFO L272 TraceCheckUtils]: 0: Hoare triple {764#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-27 17:32:17,686 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 17:32:17,686 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:32:17,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [156590380] [2022-04-27 17:32:17,687 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:32:17,687 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [728534227] [2022-04-27 17:32:17,687 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [728534227] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:32:17,687 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:32:17,687 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 22 [2022-04-27 17:32:17,687 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [138131605] [2022-04-27 17:32:17,687 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:32:17,688 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 17:32:17,688 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:32:17,688 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 17:32:17,733 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 17:32:17,734 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-27 17:32:17,734 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:32:17,734 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-27 17:32:17,734 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-27 17:32:17,735 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 17:32:18,851 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:18,852 INFO L93 Difference]: Finished difference Result 58 states and 66 transitions. [2022-04-27 17:32:18,852 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-27 17:32:18,852 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 17:32:18,852 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:32:18,852 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 17:32:18,854 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-27 17:32:18,854 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 17:32:18,856 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-27 17:32:18,856 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 61 transitions. [2022-04-27 17:32:18,926 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:32:18,927 INFO L225 Difference]: With dead ends: 58 [2022-04-27 17:32:18,927 INFO L226 Difference]: Without dead ends: 52 [2022-04-27 17:32:18,928 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 56 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 265 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=217, Invalid=1115, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 17:32:18,928 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 36 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 213 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 38 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 308 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 213 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 67 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 17:32:18,929 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [38 Valid, 177 Invalid, 308 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 213 Invalid, 0 Unknown, 67 Unchecked, 0.3s Time] [2022-04-27 17:32:18,929 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-27 17:32:18,931 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 41. [2022-04-27 17:32:18,931 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:32:18,931 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 17:32:18,931 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 17:32:18,932 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 17:32:18,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:18,933 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2022-04-27 17:32:18,933 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2022-04-27 17:32:18,934 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:32:18,934 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:32:18,934 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 17:32:18,934 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 17:32:18,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:32:18,936 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2022-04-27 17:32:18,936 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2022-04-27 17:32:18,936 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:32:18,936 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:32:18,936 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:32:18,936 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:32:18,936 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 17:32:18,937 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-27 17:32:18,938 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 39 [2022-04-27 17:32:18,938 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:32:18,938 INFO L495 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-27 17:32:18,938 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 17:32:18,938 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-27 17:32:18,939 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-27 17:32:18,939 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:32:18,939 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 17:32:18,955 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 17:32:19,147 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 17:32:19,148 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:32:19,148 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:32:19,148 INFO L85 PathProgramCache]: Analyzing trace with hash -1381917339, now seen corresponding path program 1 times [2022-04-27 17:32:19,148 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:32:19,148 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [859569183] [2022-04-27 17:32:19,148 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:32:19,148 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:32:19,163 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:32:19,163 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [358421300] [2022-04-27 17:32:19,163 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:32:19,163 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:32:19,163 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:32:19,164 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 17:32:19,165 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 17:32:19,203 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:19,204 INFO L263 TraceCheckSpWp]: Trace formula consists of 136 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-27 17:32:19,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:32:19,213 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:32:34,035 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:32:42,939 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:32:54,526 INFO L272 TraceCheckUtils]: 0: Hoare triple {1252#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:32:54,526 INFO L290 TraceCheckUtils]: 1: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:32:54,526 INFO L290 TraceCheckUtils]: 2: Hoare triple {1252#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:32:54,527 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1252#true} {1252#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:32:54,527 INFO L272 TraceCheckUtils]: 4: Hoare triple {1252#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:32:54,527 INFO L290 TraceCheckUtils]: 5: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:32:54,527 INFO L272 TraceCheckUtils]: 6: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:32:54,527 INFO L290 TraceCheckUtils]: 7: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:32:54,527 INFO L290 TraceCheckUtils]: 8: Hoare triple {1252#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[] {1252#true} is VALID [2022-04-27 17:32:54,527 INFO L290 TraceCheckUtils]: 9: Hoare triple {1252#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:32:54,527 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1252#true} {1252#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] {1252#true} is VALID [2022-04-27 17:32:54,527 INFO L290 TraceCheckUtils]: 11: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:32:54,528 INFO L272 TraceCheckUtils]: 12: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:32:54,528 INFO L290 TraceCheckUtils]: 13: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:32:54,528 INFO L290 TraceCheckUtils]: 14: Hoare triple {1252#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[] {1252#true} is VALID [2022-04-27 17:32:54,528 INFO L290 TraceCheckUtils]: 15: Hoare triple {1252#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:32:54,528 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1252#true} {1252#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] {1252#true} is VALID [2022-04-27 17:32:54,528 INFO L290 TraceCheckUtils]: 17: Hoare triple {1252#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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:32:54,529 INFO L290 TraceCheckUtils]: 18: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:32:54,529 INFO L272 TraceCheckUtils]: 19: Hoare triple {1308#(= 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] {1252#true} is VALID [2022-04-27 17:32:54,529 INFO L290 TraceCheckUtils]: 20: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:32:54,529 INFO L290 TraceCheckUtils]: 21: Hoare triple {1252#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[] {1252#true} is VALID [2022-04-27 17:32:54,529 INFO L290 TraceCheckUtils]: 22: Hoare triple {1252#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:32:54,530 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1252#true} {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:32:54,530 INFO L290 TraceCheckUtils]: 24: Hoare triple {1308#(= 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[] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:32:54,530 INFO L290 TraceCheckUtils]: 25: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:32:54,532 INFO L290 TraceCheckUtils]: 26: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:32:54,533 INFO L290 TraceCheckUtils]: 27: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:32:54,533 INFO L272 TraceCheckUtils]: 28: Hoare triple {1308#(= 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] {1252#true} is VALID [2022-04-27 17:32:54,533 INFO L290 TraceCheckUtils]: 29: Hoare triple {1252#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] {1345#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:32:54,534 INFO L290 TraceCheckUtils]: 30: Hoare triple {1345#(= |__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[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:32:54,534 INFO L290 TraceCheckUtils]: 31: Hoare triple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:32:54,534 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:32:54,535 INFO L290 TraceCheckUtils]: 33: Hoare triple {1308#(= 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[] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:32:54,535 INFO L290 TraceCheckUtils]: 34: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:32:54,535 INFO L290 TraceCheckUtils]: 35: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:32:54,536 INFO L290 TraceCheckUtils]: 36: Hoare triple {1308#(= 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] {1368#(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 17:32:54,536 INFO L272 TraceCheckUtils]: 37: Hoare triple {1368#(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] {1252#true} is VALID [2022-04-27 17:32:54,536 INFO L290 TraceCheckUtils]: 38: Hoare triple {1252#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] {1345#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:32:54,537 INFO L290 TraceCheckUtils]: 39: Hoare triple {1345#(= |__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[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:32:54,537 INFO L290 TraceCheckUtils]: 40: Hoare triple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:32:54,538 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} {1368#(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] {1384#(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 17:32:54,539 INFO L290 TraceCheckUtils]: 42: Hoare triple {1384#(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[] {1384#(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 17:32:56,541 WARN L290 TraceCheckUtils]: 43: Hoare triple {1384#(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] {1391#(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 17:32:56,543 INFO L272 TraceCheckUtils]: 44: Hoare triple {1391#(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] {1395#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:32:56,544 INFO L290 TraceCheckUtils]: 45: Hoare triple {1395#(<= 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] {1399#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:32:56,544 INFO L290 TraceCheckUtils]: 46: Hoare triple {1399#(<= 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[] {1253#false} is VALID [2022-04-27 17:32:56,544 INFO L290 TraceCheckUtils]: 47: Hoare triple {1253#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1253#false} is VALID [2022-04-27 17:32:56,545 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 17:32:56,545 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:33:07,564 INFO L290 TraceCheckUtils]: 47: Hoare triple {1253#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1253#false} is VALID [2022-04-27 17:33:07,566 INFO L290 TraceCheckUtils]: 46: Hoare triple {1399#(<= 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[] {1253#false} is VALID [2022-04-27 17:33:07,567 INFO L290 TraceCheckUtils]: 45: Hoare triple {1395#(<= 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] {1399#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:33:07,568 INFO L272 TraceCheckUtils]: 44: Hoare triple {1415#(= (+ (* 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] {1395#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:33:07,569 INFO L290 TraceCheckUtils]: 43: Hoare triple {1419#(= (+ (* 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] {1415#(= (+ (* 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 17:33:07,570 INFO L290 TraceCheckUtils]: 42: Hoare triple {1419#(= (+ (* 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[] {1419#(= (+ (* 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 17:33:07,571 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} {1426#(= (+ (* 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] {1419#(= (+ (* 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 17:33:07,572 INFO L290 TraceCheckUtils]: 40: Hoare triple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:33:07,575 INFO L290 TraceCheckUtils]: 39: Hoare triple {1436#(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[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:33:07,576 INFO L290 TraceCheckUtils]: 38: Hoare triple {1252#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] {1436#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 17:33:07,576 INFO L272 TraceCheckUtils]: 37: Hoare triple {1426#(= (+ (* 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] {1252#true} is VALID [2022-04-27 17:33:07,576 INFO L290 TraceCheckUtils]: 36: Hoare triple {1308#(= 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] {1426#(= (+ (* 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 17:33:07,577 INFO L290 TraceCheckUtils]: 35: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:33:07,577 INFO L290 TraceCheckUtils]: 34: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:33:07,577 INFO L290 TraceCheckUtils]: 33: Hoare triple {1308#(= 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[] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:33:07,578 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1252#true} {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:33:07,578 INFO L290 TraceCheckUtils]: 31: Hoare triple {1252#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:33:07,578 INFO L290 TraceCheckUtils]: 30: Hoare triple {1252#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[] {1252#true} is VALID [2022-04-27 17:33:07,578 INFO L290 TraceCheckUtils]: 29: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:33:07,578 INFO L272 TraceCheckUtils]: 28: Hoare triple {1308#(= 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] {1252#true} is VALID [2022-04-27 17:33:07,579 INFO L290 TraceCheckUtils]: 27: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:33:07,579 INFO L290 TraceCheckUtils]: 26: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:33:07,581 INFO L290 TraceCheckUtils]: 25: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:33:07,582 INFO L290 TraceCheckUtils]: 24: Hoare triple {1308#(= 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[] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:33:07,582 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1252#true} {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:33:07,583 INFO L290 TraceCheckUtils]: 22: Hoare triple {1252#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:33:07,583 INFO L290 TraceCheckUtils]: 21: Hoare triple {1252#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[] {1252#true} is VALID [2022-04-27 17:33:07,583 INFO L290 TraceCheckUtils]: 20: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:33:07,583 INFO L272 TraceCheckUtils]: 19: Hoare triple {1308#(= 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] {1252#true} is VALID [2022-04-27 17:33:07,583 INFO L290 TraceCheckUtils]: 18: Hoare triple {1308#(= 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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:33:07,584 INFO L290 TraceCheckUtils]: 17: Hoare triple {1252#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] {1308#(= main_~y~0 0)} is VALID [2022-04-27 17:33:07,584 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1252#true} {1252#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] {1252#true} is VALID [2022-04-27 17:33:07,584 INFO L290 TraceCheckUtils]: 15: Hoare triple {1252#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:33:07,584 INFO L290 TraceCheckUtils]: 14: Hoare triple {1252#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[] {1252#true} is VALID [2022-04-27 17:33:07,584 INFO L290 TraceCheckUtils]: 13: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:33:07,584 INFO L272 TraceCheckUtils]: 12: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:33:07,584 INFO L290 TraceCheckUtils]: 11: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:33:07,584 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1252#true} {1252#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] {1252#true} is VALID [2022-04-27 17:33:07,584 INFO L290 TraceCheckUtils]: 9: Hoare triple {1252#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:33:07,584 INFO L290 TraceCheckUtils]: 8: Hoare triple {1252#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[] {1252#true} is VALID [2022-04-27 17:33:07,584 INFO L290 TraceCheckUtils]: 7: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:33:07,584 INFO L272 TraceCheckUtils]: 6: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:33:07,585 INFO L290 TraceCheckUtils]: 5: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:33:07,585 INFO L272 TraceCheckUtils]: 4: Hoare triple {1252#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:33:07,585 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1252#true} {1252#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:33:07,585 INFO L290 TraceCheckUtils]: 2: Hoare triple {1252#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:33:07,585 INFO L290 TraceCheckUtils]: 1: Hoare triple {1252#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] {1252#true} is VALID [2022-04-27 17:33:07,586 INFO L272 TraceCheckUtils]: 0: Hoare triple {1252#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-27 17:33:07,587 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 17:33:07,587 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:33:07,587 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [859569183] [2022-04-27 17:33:07,587 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:33:07,587 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [358421300] [2022-04-27 17:33:07,587 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [358421300] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:33:07,588 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:33:07,588 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-27 17:33:07,588 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1150837894] [2022-04-27 17:33:07,588 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:33:07,589 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 17:33:07,597 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:33:07,598 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 17:33:09,635 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 17:33:09,635 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 17:33:09,635 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:33:09,635 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 17:33:09,636 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-27 17:33:09,636 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 17:33:11,892 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 17:33:16,066 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 17:33:18,090 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 17:33:20,270 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 17:33:22,343 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 17:33:24,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:33:24,820 INFO L93 Difference]: Finished difference Result 54 states and 61 transitions. [2022-04-27 17:33:24,820 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 17:33:24,821 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 17:33:24,821 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:33:24,821 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 17:33:24,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 47 transitions. [2022-04-27 17:33:24,822 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 17:33:24,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 47 transitions. [2022-04-27 17:33:24,823 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 47 transitions. [2022-04-27 17:33:26,861 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 46 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 17:33:26,873 INFO L225 Difference]: With dead ends: 54 [2022-04-27 17:33:26,873 INFO L226 Difference]: Without dead ends: 50 [2022-04-27 17:33:26,873 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 81 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 4.7s TimeCoverageRelationStatistics Valid=66, Invalid=238, Unknown=2, NotChecked=0, Total=306 [2022-04-27 17:33:26,876 INFO L413 NwaCegarLoop]: 19 mSDtfsCounter, 26 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 137 mSolverCounterSat, 13 mSolverCounterUnsat, 5 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 10.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 155 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 137 IncrementalHoareTripleChecker+Invalid, 5 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 10.3s IncrementalHoareTripleChecker+Time [2022-04-27 17:33:26,878 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [27 Valid, 136 Invalid, 155 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 137 Invalid, 5 Unknown, 0 Unchecked, 10.3s Time] [2022-04-27 17:33:26,879 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-27 17:33:26,888 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 44. [2022-04-27 17:33:26,889 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:33:26,889 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 17:33:26,889 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 17:33:26,890 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 17:33:26,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:33:26,892 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-27 17:33:26,892 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-27 17:33:26,895 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:33:26,895 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:33:26,896 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 17:33:26,896 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 17:33:26,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:33:26,898 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-27 17:33:26,898 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-27 17:33:26,900 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:33:26,900 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:33:26,900 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:33:26,900 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:33:26,900 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 17:33:26,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 49 transitions. [2022-04-27 17:33:26,901 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 49 transitions. Word has length 48 [2022-04-27 17:33:26,902 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:33:26,902 INFO L495 AbstractCegarLoop]: Abstraction has 44 states and 49 transitions. [2022-04-27 17:33:26,902 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 17:33:26,902 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 49 transitions. [2022-04-27 17:33:26,904 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-27 17:33:26,904 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:33:26,905 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 17:33:26,921 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 17:33:27,105 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 17:33:27,106 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:33:27,106 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:33:27,106 INFO L85 PathProgramCache]: Analyzing trace with hash -137152858, now seen corresponding path program 1 times [2022-04-27 17:33:27,106 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:33:27,106 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [404085912] [2022-04-27 17:33:27,106 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:33:27,107 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:33:27,147 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:33:27,147 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1003615795] [2022-04-27 17:33:27,147 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:33:27,147 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:33:27,147 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:33:27,160 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 17:33:27,161 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 17:33:27,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:33:27,209 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 17:33:27,222 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:33:27,223 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:33:35,655 INFO L272 TraceCheckUtils]: 0: Hoare triple {1759#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:35,655 INFO L290 TraceCheckUtils]: 1: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,655 INFO L290 TraceCheckUtils]: 2: Hoare triple {1759#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:35,655 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1759#true} {1759#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:35,655 INFO L272 TraceCheckUtils]: 4: Hoare triple {1759#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:35,655 INFO L290 TraceCheckUtils]: 5: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,655 INFO L272 TraceCheckUtils]: 6: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,655 INFO L290 TraceCheckUtils]: 7: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,656 INFO L290 TraceCheckUtils]: 8: Hoare triple {1759#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[] {1759#true} is VALID [2022-04-27 17:33:35,656 INFO L290 TraceCheckUtils]: 9: Hoare triple {1759#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:35,656 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1759#true} {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,656 INFO L290 TraceCheckUtils]: 11: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,656 INFO L272 TraceCheckUtils]: 12: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,656 INFO L290 TraceCheckUtils]: 13: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,656 INFO L290 TraceCheckUtils]: 14: Hoare triple {1759#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[] {1759#true} is VALID [2022-04-27 17:33:35,656 INFO L290 TraceCheckUtils]: 15: Hoare triple {1759#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:35,656 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1759#true} {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,657 INFO L290 TraceCheckUtils]: 17: Hoare triple {1759#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] {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 17:33:35,658 INFO L290 TraceCheckUtils]: 18: Hoare triple {1815#(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] {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 17:33:35,658 INFO L272 TraceCheckUtils]: 19: Hoare triple {1815#(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] {1759#true} is VALID [2022-04-27 17:33:35,658 INFO L290 TraceCheckUtils]: 20: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,658 INFO L290 TraceCheckUtils]: 21: Hoare triple {1759#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[] {1759#true} is VALID [2022-04-27 17:33:35,658 INFO L290 TraceCheckUtils]: 22: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:35,659 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1759#true} {1815#(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] {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 17:33:35,659 INFO L290 TraceCheckUtils]: 24: Hoare triple {1815#(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[] {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 17:33:35,660 INFO L290 TraceCheckUtils]: 25: Hoare triple {1815#(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] {1840#(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 17:33:35,661 INFO L290 TraceCheckUtils]: 26: Hoare triple {1840#(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] {1844#(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 17:33:35,661 INFO L290 TraceCheckUtils]: 27: Hoare triple {1844#(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] {1844#(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 17:33:35,661 INFO L272 TraceCheckUtils]: 28: Hoare triple {1844#(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] {1759#true} is VALID [2022-04-27 17:33:35,662 INFO L290 TraceCheckUtils]: 29: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,662 INFO L290 TraceCheckUtils]: 30: Hoare triple {1759#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[] {1759#true} is VALID [2022-04-27 17:33:35,662 INFO L290 TraceCheckUtils]: 31: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:35,662 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1759#true} {1844#(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] {1844#(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 17:33:35,663 INFO L290 TraceCheckUtils]: 33: Hoare triple {1844#(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[] {1844#(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 17:33:35,665 INFO L290 TraceCheckUtils]: 34: Hoare triple {1844#(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] {1869#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} is VALID [2022-04-27 17:33:35,666 INFO L290 TraceCheckUtils]: 35: Hoare triple {1869#(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] {1873#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-27 17:33:35,666 INFO L290 TraceCheckUtils]: 36: Hoare triple {1873#(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] {1873#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-27 17:33:35,666 INFO L272 TraceCheckUtils]: 37: Hoare triple {1873#(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] {1759#true} is VALID [2022-04-27 17:33:35,666 INFO L290 TraceCheckUtils]: 38: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:35,666 INFO L290 TraceCheckUtils]: 39: Hoare triple {1759#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[] {1759#true} is VALID [2022-04-27 17:33:35,667 INFO L290 TraceCheckUtils]: 40: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:35,667 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1759#true} {1873#(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] {1873#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-27 17:33:35,668 INFO L290 TraceCheckUtils]: 42: Hoare triple {1873#(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[] {1760#false} is VALID [2022-04-27 17:33:35,668 INFO L290 TraceCheckUtils]: 43: Hoare triple {1760#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] {1760#false} is VALID [2022-04-27 17:33:35,668 INFO L272 TraceCheckUtils]: 44: Hoare triple {1760#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] {1760#false} is VALID [2022-04-27 17:33:35,668 INFO L290 TraceCheckUtils]: 45: Hoare triple {1760#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] {1760#false} is VALID [2022-04-27 17:33:35,668 INFO L290 TraceCheckUtils]: 46: Hoare triple {1760#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[] {1760#false} is VALID [2022-04-27 17:33:35,668 INFO L290 TraceCheckUtils]: 47: Hoare triple {1760#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1760#false} is VALID [2022-04-27 17:33:35,668 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 17:33:35,669 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:33:36,080 INFO L290 TraceCheckUtils]: 47: Hoare triple {1760#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1760#false} is VALID [2022-04-27 17:33:36,081 INFO L290 TraceCheckUtils]: 46: Hoare triple {1760#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[] {1760#false} is VALID [2022-04-27 17:33:36,081 INFO L290 TraceCheckUtils]: 45: Hoare triple {1760#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] {1760#false} is VALID [2022-04-27 17:33:36,081 INFO L272 TraceCheckUtils]: 44: Hoare triple {1760#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] {1760#false} is VALID [2022-04-27 17:33:36,081 INFO L290 TraceCheckUtils]: 43: Hoare triple {1760#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] {1760#false} is VALID [2022-04-27 17:33:36,081 INFO L290 TraceCheckUtils]: 42: Hoare triple {1925#(<= 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[] {1760#false} is VALID [2022-04-27 17:33:36,082 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1759#true} {1925#(<= 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] {1925#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:33:36,082 INFO L290 TraceCheckUtils]: 40: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:36,082 INFO L290 TraceCheckUtils]: 39: Hoare triple {1759#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[] {1759#true} is VALID [2022-04-27 17:33:36,082 INFO L290 TraceCheckUtils]: 38: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,082 INFO L272 TraceCheckUtils]: 37: Hoare triple {1925#(<= 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] {1759#true} is VALID [2022-04-27 17:33:36,082 INFO L290 TraceCheckUtils]: 36: Hoare triple {1925#(<= 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] {1925#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:33:36,083 INFO L290 TraceCheckUtils]: 35: Hoare triple {1947#(<= (+ 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] {1925#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:33:36,084 INFO L290 TraceCheckUtils]: 34: Hoare triple {1951#(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] {1947#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:33:36,084 INFO L290 TraceCheckUtils]: 33: Hoare triple {1951#(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[] {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 17:33:36,084 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1759#true} {1951#(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] {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 17:33:36,085 INFO L290 TraceCheckUtils]: 31: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:36,085 INFO L290 TraceCheckUtils]: 30: Hoare triple {1759#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[] {1759#true} is VALID [2022-04-27 17:33:36,085 INFO L290 TraceCheckUtils]: 29: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,085 INFO L272 TraceCheckUtils]: 28: Hoare triple {1951#(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] {1759#true} is VALID [2022-04-27 17:33:36,085 INFO L290 TraceCheckUtils]: 27: Hoare triple {1951#(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] {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 17:33:36,086 INFO L290 TraceCheckUtils]: 26: Hoare triple {1976#(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] {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 17:33:36,086 INFO L290 TraceCheckUtils]: 25: Hoare triple {1980#(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] {1976#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} is VALID [2022-04-27 17:33:36,087 INFO L290 TraceCheckUtils]: 24: Hoare triple {1980#(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[] {1980#(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 17:33:36,087 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1759#true} {1980#(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] {1980#(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 17:33:36,087 INFO L290 TraceCheckUtils]: 22: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:36,087 INFO L290 TraceCheckUtils]: 21: Hoare triple {1759#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[] {1759#true} is VALID [2022-04-27 17:33:36,088 INFO L290 TraceCheckUtils]: 20: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,088 INFO L272 TraceCheckUtils]: 19: Hoare triple {1980#(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] {1759#true} is VALID [2022-04-27 17:33:36,088 INFO L290 TraceCheckUtils]: 18: Hoare triple {1980#(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] {1980#(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 17:33:36,089 INFO L290 TraceCheckUtils]: 17: Hoare triple {1759#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] {1980#(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 17:33:36,089 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1759#true} {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,089 INFO L290 TraceCheckUtils]: 15: Hoare triple {1759#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:36,089 INFO L290 TraceCheckUtils]: 14: Hoare triple {1759#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[] {1759#true} is VALID [2022-04-27 17:33:36,089 INFO L290 TraceCheckUtils]: 13: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,089 INFO L272 TraceCheckUtils]: 12: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,089 INFO L290 TraceCheckUtils]: 11: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,089 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1759#true} {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,089 INFO L290 TraceCheckUtils]: 9: Hoare triple {1759#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:36,090 INFO L290 TraceCheckUtils]: 8: Hoare triple {1759#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[] {1759#true} is VALID [2022-04-27 17:33:36,090 INFO L290 TraceCheckUtils]: 7: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,090 INFO L272 TraceCheckUtils]: 6: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,090 INFO L290 TraceCheckUtils]: 5: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,090 INFO L272 TraceCheckUtils]: 4: Hoare triple {1759#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:36,090 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1759#true} {1759#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:36,090 INFO L290 TraceCheckUtils]: 2: Hoare triple {1759#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:36,090 INFO L290 TraceCheckUtils]: 1: Hoare triple {1759#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] {1759#true} is VALID [2022-04-27 17:33:36,090 INFO L272 TraceCheckUtils]: 0: Hoare triple {1759#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-27 17:33:36,090 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 17:33:36,091 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:33:36,091 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [404085912] [2022-04-27 17:33:36,091 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:33:36,091 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1003615795] [2022-04-27 17:33:36,091 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1003615795] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:33:36,091 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:33:36,091 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-27 17:33:36,091 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1998178458] [2022-04-27 17:33:36,091 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:33:36,092 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 17:33:36,092 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:33:36,092 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 17:33:36,130 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 17:33:36,131 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 17:33:36,132 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:33:36,133 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 17:33:36,133 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-27 17:33:36,133 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 17:33:37,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:33:37,025 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-27 17:33:37,025 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 17:33:37,025 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 17:33:37,025 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:33:37,025 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 17:33:37,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 53 transitions. [2022-04-27 17:33:37,027 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 17:33:37,027 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 53 transitions. [2022-04-27 17:33:37,028 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 53 transitions. [2022-04-27 17:33:37,067 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:33:37,067 INFO L225 Difference]: With dead ends: 59 [2022-04-27 17:33:37,068 INFO L226 Difference]: Without dead ends: 59 [2022-04-27 17:33:37,068 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 85 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=59, Invalid=181, Unknown=0, NotChecked=0, Total=240 [2022-04-27 17:33:37,068 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 5 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 171 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 180 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 171 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 17:33:37,068 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [5 Valid, 136 Invalid, 180 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 171 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 17:33:37,069 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-04-27 17:33:37,071 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 51. [2022-04-27 17:33:37,071 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:33:37,071 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 17:33:37,071 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 17:33:37,071 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 17:33:37,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:33:37,073 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-27 17:33:37,073 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-27 17:33:37,073 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:33:37,073 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:33:37,074 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 17:33:37,074 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 17:33:37,075 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:33:37,075 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-27 17:33:37,075 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-27 17:33:37,075 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:33:37,075 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:33:37,075 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:33:37,075 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:33:37,076 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 17:33:37,077 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 59 transitions. [2022-04-27 17:33:37,077 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 59 transitions. Word has length 48 [2022-04-27 17:33:37,077 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:33:37,077 INFO L495 AbstractCegarLoop]: Abstraction has 51 states and 59 transitions. [2022-04-27 17:33:37,077 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 17:33:37,077 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 59 transitions. [2022-04-27 17:33:37,078 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-27 17:33:37,078 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:33:37,078 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 17:33:37,094 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-27 17:33:37,291 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 17:33:37,291 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:33:37,292 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:33:37,292 INFO L85 PathProgramCache]: Analyzing trace with hash -545218702, now seen corresponding path program 2 times [2022-04-27 17:33:37,292 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:33:37,292 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [511644919] [2022-04-27 17:33:37,292 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:33:37,292 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:33:37,304 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:33:37,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [954939952] [2022-04-27 17:33:37,304 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 17:33:37,304 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:33:37,304 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:33:37,305 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 17:33:37,331 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 17:33:37,384 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 17:33:37,384 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 17:33:37,384 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 17:33:37,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:33:37,395 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:33:39,051 INFO L272 TraceCheckUtils]: 0: Hoare triple {2294#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,051 INFO L290 TraceCheckUtils]: 1: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,052 INFO L290 TraceCheckUtils]: 2: Hoare triple {2294#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,052 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2294#true} {2294#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,052 INFO L272 TraceCheckUtils]: 4: Hoare triple {2294#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,052 INFO L290 TraceCheckUtils]: 5: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,052 INFO L272 TraceCheckUtils]: 6: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,052 INFO L290 TraceCheckUtils]: 7: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,052 INFO L290 TraceCheckUtils]: 8: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,052 INFO L290 TraceCheckUtils]: 9: Hoare triple {2294#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,052 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2294#true} {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,052 INFO L290 TraceCheckUtils]: 11: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,053 INFO L272 TraceCheckUtils]: 12: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,053 INFO L290 TraceCheckUtils]: 13: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,053 INFO L290 TraceCheckUtils]: 14: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,053 INFO L290 TraceCheckUtils]: 15: Hoare triple {2294#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,053 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2294#true} {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,063 INFO L290 TraceCheckUtils]: 17: Hoare triple {2294#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] {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 17:33:39,064 INFO L290 TraceCheckUtils]: 18: Hoare triple {2350#(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] {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 17:33:39,064 INFO L272 TraceCheckUtils]: 19: Hoare triple {2350#(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] {2294#true} is VALID [2022-04-27 17:33:39,064 INFO L290 TraceCheckUtils]: 20: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,065 INFO L290 TraceCheckUtils]: 21: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,065 INFO L290 TraceCheckUtils]: 22: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,065 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2294#true} {2350#(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] {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 17:33:39,066 INFO L290 TraceCheckUtils]: 24: Hoare triple {2350#(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[] {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 17:33:39,067 INFO L290 TraceCheckUtils]: 25: Hoare triple {2350#(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] {2375#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-27 17:33:39,068 INFO L290 TraceCheckUtils]: 26: Hoare triple {2375#(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] {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-27 17:33:39,069 INFO L290 TraceCheckUtils]: 27: Hoare triple {2379#(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] {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-27 17:33:39,069 INFO L272 TraceCheckUtils]: 28: Hoare triple {2379#(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] {2294#true} is VALID [2022-04-27 17:33:39,069 INFO L290 TraceCheckUtils]: 29: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,069 INFO L290 TraceCheckUtils]: 30: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,069 INFO L290 TraceCheckUtils]: 31: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,070 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2294#true} {2379#(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] {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-27 17:33:39,071 INFO L290 TraceCheckUtils]: 33: Hoare triple {2379#(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[] {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-27 17:33:39,072 INFO L290 TraceCheckUtils]: 34: Hoare triple {2379#(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] {2404#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:33:39,072 INFO L290 TraceCheckUtils]: 35: Hoare triple {2404#(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] {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:33:39,073 INFO L290 TraceCheckUtils]: 36: Hoare triple {2408#(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] {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:33:39,073 INFO L272 TraceCheckUtils]: 37: Hoare triple {2408#(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] {2294#true} is VALID [2022-04-27 17:33:39,073 INFO L290 TraceCheckUtils]: 38: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,073 INFO L290 TraceCheckUtils]: 39: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,073 INFO L290 TraceCheckUtils]: 40: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,074 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2294#true} {2408#(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] {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:33:39,075 INFO L290 TraceCheckUtils]: 42: Hoare triple {2408#(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[] {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:33:39,075 INFO L290 TraceCheckUtils]: 43: Hoare triple {2408#(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] {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:33:39,076 INFO L290 TraceCheckUtils]: 44: Hoare triple {2408#(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] {2436#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:33:39,077 INFO L290 TraceCheckUtils]: 45: Hoare triple {2436#(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] {2436#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:33:39,077 INFO L272 TraceCheckUtils]: 46: Hoare triple {2436#(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] {2294#true} is VALID [2022-04-27 17:33:39,077 INFO L290 TraceCheckUtils]: 47: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,077 INFO L290 TraceCheckUtils]: 48: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,077 INFO L290 TraceCheckUtils]: 49: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,078 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2294#true} {2436#(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] {2436#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:33:39,078 INFO L290 TraceCheckUtils]: 51: Hoare triple {2436#(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[] {2295#false} is VALID [2022-04-27 17:33:39,078 INFO L290 TraceCheckUtils]: 52: Hoare triple {2295#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] {2295#false} is VALID [2022-04-27 17:33:39,078 INFO L272 TraceCheckUtils]: 53: Hoare triple {2295#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] {2295#false} is VALID [2022-04-27 17:33:39,079 INFO L290 TraceCheckUtils]: 54: Hoare triple {2295#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] {2295#false} is VALID [2022-04-27 17:33:39,079 INFO L290 TraceCheckUtils]: 55: Hoare triple {2295#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[] {2295#false} is VALID [2022-04-27 17:33:39,079 INFO L290 TraceCheckUtils]: 56: Hoare triple {2295#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2295#false} is VALID [2022-04-27 17:33:39,079 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 17:33:39,080 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:33:39,547 INFO L290 TraceCheckUtils]: 56: Hoare triple {2295#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2295#false} is VALID [2022-04-27 17:33:39,547 INFO L290 TraceCheckUtils]: 55: Hoare triple {2295#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[] {2295#false} is VALID [2022-04-27 17:33:39,547 INFO L290 TraceCheckUtils]: 54: Hoare triple {2295#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] {2295#false} is VALID [2022-04-27 17:33:39,548 INFO L272 TraceCheckUtils]: 53: Hoare triple {2295#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] {2295#false} is VALID [2022-04-27 17:33:39,548 INFO L290 TraceCheckUtils]: 52: Hoare triple {2295#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] {2295#false} is VALID [2022-04-27 17:33:39,548 INFO L290 TraceCheckUtils]: 51: Hoare triple {2488#(<= 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[] {2295#false} is VALID [2022-04-27 17:33:39,549 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2294#true} {2488#(<= 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] {2488#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:33:39,549 INFO L290 TraceCheckUtils]: 49: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,549 INFO L290 TraceCheckUtils]: 48: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,549 INFO L290 TraceCheckUtils]: 47: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,549 INFO L272 TraceCheckUtils]: 46: Hoare triple {2488#(<= 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] {2294#true} is VALID [2022-04-27 17:33:39,549 INFO L290 TraceCheckUtils]: 45: Hoare triple {2488#(<= 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] {2488#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:33:39,550 INFO L290 TraceCheckUtils]: 44: Hoare triple {2510#(<= (+ 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] {2488#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:33:39,550 INFO L290 TraceCheckUtils]: 43: Hoare triple {2510#(<= (+ 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] {2510#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:33:39,551 INFO L290 TraceCheckUtils]: 42: Hoare triple {2510#(<= (+ 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[] {2510#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:33:39,551 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2294#true} {2510#(<= (+ 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] {2510#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:33:39,551 INFO L290 TraceCheckUtils]: 40: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,551 INFO L290 TraceCheckUtils]: 39: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,551 INFO L290 TraceCheckUtils]: 38: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,551 INFO L272 TraceCheckUtils]: 37: Hoare triple {2510#(<= (+ 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] {2294#true} is VALID [2022-04-27 17:33:39,552 INFO L290 TraceCheckUtils]: 36: Hoare triple {2510#(<= (+ 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] {2510#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:33:39,552 INFO L290 TraceCheckUtils]: 35: Hoare triple {2538#(<= (+ 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] {2510#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:33:39,553 INFO L290 TraceCheckUtils]: 34: Hoare triple {2542#(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] {2538#(<= (+ main_~x~0 2) main_~X~0)} is VALID [2022-04-27 17:33:39,553 INFO L290 TraceCheckUtils]: 33: Hoare triple {2542#(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[] {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 17:33:39,554 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2294#true} {2542#(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] {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 17:33:39,554 INFO L290 TraceCheckUtils]: 31: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,554 INFO L290 TraceCheckUtils]: 30: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,554 INFO L290 TraceCheckUtils]: 29: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,554 INFO L272 TraceCheckUtils]: 28: Hoare triple {2542#(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] {2294#true} is VALID [2022-04-27 17:33:39,554 INFO L290 TraceCheckUtils]: 27: Hoare triple {2542#(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] {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 17:33:39,555 INFO L290 TraceCheckUtils]: 26: Hoare triple {2567#(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] {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 17:33:39,555 INFO L290 TraceCheckUtils]: 25: Hoare triple {2571#(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] {2567#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-27 17:33:39,556 INFO L290 TraceCheckUtils]: 24: Hoare triple {2571#(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[] {2571#(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 17:33:39,556 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2294#true} {2571#(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] {2571#(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 17:33:39,556 INFO L290 TraceCheckUtils]: 22: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,557 INFO L290 TraceCheckUtils]: 21: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,557 INFO L290 TraceCheckUtils]: 20: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,557 INFO L272 TraceCheckUtils]: 19: Hoare triple {2571#(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] {2294#true} is VALID [2022-04-27 17:33:39,557 INFO L290 TraceCheckUtils]: 18: Hoare triple {2571#(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] {2571#(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 17:33:39,558 INFO L290 TraceCheckUtils]: 17: Hoare triple {2294#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] {2571#(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 17:33:39,558 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2294#true} {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,558 INFO L290 TraceCheckUtils]: 15: Hoare triple {2294#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,558 INFO L290 TraceCheckUtils]: 14: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,558 INFO L290 TraceCheckUtils]: 13: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,558 INFO L272 TraceCheckUtils]: 12: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,558 INFO L290 TraceCheckUtils]: 11: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,558 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2294#true} {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,558 INFO L290 TraceCheckUtils]: 9: Hoare triple {2294#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,558 INFO L290 TraceCheckUtils]: 8: Hoare triple {2294#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[] {2294#true} is VALID [2022-04-27 17:33:39,559 INFO L290 TraceCheckUtils]: 7: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,559 INFO L272 TraceCheckUtils]: 6: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,559 INFO L290 TraceCheckUtils]: 5: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,559 INFO L272 TraceCheckUtils]: 4: Hoare triple {2294#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,559 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2294#true} {2294#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,559 INFO L290 TraceCheckUtils]: 2: Hoare triple {2294#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,559 INFO L290 TraceCheckUtils]: 1: Hoare triple {2294#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] {2294#true} is VALID [2022-04-27 17:33:39,559 INFO L272 TraceCheckUtils]: 0: Hoare triple {2294#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-27 17:33:39,559 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 17:33:39,559 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:33:39,560 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [511644919] [2022-04-27 17:33:39,560 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:33:39,560 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [954939952] [2022-04-27 17:33:39,560 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [954939952] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:33:39,560 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:33:39,560 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-27 17:33:39,560 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1991071053] [2022-04-27 17:33:39,560 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:33:39,562 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 17:33:39,562 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:33:39,563 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 17:33:39,615 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 17:33:39,615 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 17:33:39,615 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:33:39,615 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 17:33:39,616 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-04-27 17:33:39,616 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 17:33:40,654 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:33:40,654 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-27 17:33:40,654 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 17:33:40,654 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 17:33:40,655 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:33:40,655 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 17:33:40,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 59 transitions. [2022-04-27 17:33:40,656 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 17:33:40,657 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 59 transitions. [2022-04-27 17:33:40,657 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 59 transitions. [2022-04-27 17:33:40,707 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:33:40,708 INFO L225 Difference]: With dead ends: 72 [2022-04-27 17:33:40,708 INFO L226 Difference]: Without dead ends: 72 [2022-04-27 17:33:40,709 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 101 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=64, Invalid=208, Unknown=0, NotChecked=0, Total=272 [2022-04-27 17:33:40,709 INFO L413 NwaCegarLoop]: 32 mSDtfsCounter, 10 mSDsluCounter, 124 mSDsCounter, 0 mSdLazyCounter, 186 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 199 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 186 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-27 17:33:40,709 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 156 Invalid, 199 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 186 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-27 17:33:40,710 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states. [2022-04-27 17:33:40,712 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 56. [2022-04-27 17:33:40,712 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:33:40,712 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 17:33:40,713 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 17:33:40,713 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 17:33:40,715 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:33:40,715 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-27 17:33:40,715 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 87 transitions. [2022-04-27 17:33:40,715 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:33:40,715 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:33:40,715 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 17:33:40,715 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 17:33:40,717 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:33:40,717 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-27 17:33:40,717 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 87 transitions. [2022-04-27 17:33:40,717 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:33:40,717 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:33:40,718 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:33:40,718 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:33:40,718 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 17:33:40,719 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 66 transitions. [2022-04-27 17:33:40,719 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 66 transitions. Word has length 57 [2022-04-27 17:33:40,719 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:33:40,719 INFO L495 AbstractCegarLoop]: Abstraction has 56 states and 66 transitions. [2022-04-27 17:33:40,719 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 17:33:40,719 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 66 transitions. [2022-04-27 17:33:40,720 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-27 17:33:40,720 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:33:40,720 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 17:33:40,736 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 17:33:40,935 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 17:33:40,935 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:33:40,936 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:33:40,936 INFO L85 PathProgramCache]: Analyzing trace with hash 494880272, now seen corresponding path program 3 times [2022-04-27 17:33:40,936 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:33:40,936 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [266585913] [2022-04-27 17:33:40,936 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:33:40,936 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:33:40,946 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:33:40,946 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [359804371] [2022-04-27 17:33:40,947 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 17:33:40,947 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:33:40,947 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:33:40,947 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 17:33:40,948 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 17:33:41,229 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-27 17:33:41,229 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 17:33:41,231 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-27 17:33:41,255 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:33:41,257 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:34:04,080 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:34:12,147 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:34:18,168 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:35:30,001 INFO L272 TraceCheckUtils]: 0: Hoare triple {2927#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:35:30,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:35:30,002 INFO L290 TraceCheckUtils]: 2: Hoare triple {2927#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:35:30,002 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2927#true} {2927#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:35:30,002 INFO L272 TraceCheckUtils]: 4: Hoare triple {2927#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:35:30,002 INFO L290 TraceCheckUtils]: 5: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:35:30,002 INFO L272 TraceCheckUtils]: 6: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:35:30,002 INFO L290 TraceCheckUtils]: 7: Hoare triple {2927#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] {2953#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 17:35:30,003 INFO L290 TraceCheckUtils]: 8: Hoare triple {2953#(= 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[] {2957#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 17:35:30,003 INFO L290 TraceCheckUtils]: 9: Hoare triple {2957#(not (= |assume_abort_if_not_#in~cond| 0))} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2957#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 17:35:30,003 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2957#(not (= |assume_abort_if_not_#in~cond| 0))} {2927#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] {2964#(and (<= main_~X~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,004 INFO L290 TraceCheckUtils]: 11: Hoare triple {2964#(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] {2964#(and (<= main_~X~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,004 INFO L272 TraceCheckUtils]: 12: Hoare triple {2964#(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] {2927#true} is VALID [2022-04-27 17:35:30,004 INFO L290 TraceCheckUtils]: 13: Hoare triple {2927#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] {2953#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 17:35:30,006 INFO L290 TraceCheckUtils]: 14: Hoare triple {2953#(= 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[] {2957#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 17:35:30,007 INFO L290 TraceCheckUtils]: 15: Hoare triple {2957#(not (= |assume_abort_if_not_#in~cond| 0))} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2957#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 17:35:30,007 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2957#(not (= |assume_abort_if_not_#in~cond| 0))} {2964#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,008 INFO L290 TraceCheckUtils]: 17: Hoare triple {2983#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,008 INFO L290 TraceCheckUtils]: 18: Hoare triple {2983#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,008 INFO L272 TraceCheckUtils]: 19: Hoare triple {2983#(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] {2927#true} is VALID [2022-04-27 17:35:30,008 INFO L290 TraceCheckUtils]: 20: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:35:30,008 INFO L290 TraceCheckUtils]: 21: Hoare triple {2927#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[] {2927#true} is VALID [2022-04-27 17:35:30,008 INFO L290 TraceCheckUtils]: 22: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:35:30,009 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2927#true} {2983#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,009 INFO L290 TraceCheckUtils]: 24: Hoare triple {2983#(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[] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,010 INFO L290 TraceCheckUtils]: 25: Hoare triple {2983#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,010 INFO L290 TraceCheckUtils]: 26: Hoare triple {2983#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,010 INFO L290 TraceCheckUtils]: 27: Hoare triple {2983#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,010 INFO L272 TraceCheckUtils]: 28: Hoare triple {2983#(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] {2927#true} is VALID [2022-04-27 17:35:30,010 INFO L290 TraceCheckUtils]: 29: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:35:30,011 INFO L290 TraceCheckUtils]: 30: Hoare triple {2927#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[] {2927#true} is VALID [2022-04-27 17:35:30,011 INFO L290 TraceCheckUtils]: 31: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:35:30,011 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2927#true} {2983#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,011 INFO L290 TraceCheckUtils]: 33: Hoare triple {2983#(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[] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,012 INFO L290 TraceCheckUtils]: 34: Hoare triple {2983#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,012 INFO L290 TraceCheckUtils]: 35: Hoare triple {2983#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,013 INFO L290 TraceCheckUtils]: 36: Hoare triple {2983#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,013 INFO L272 TraceCheckUtils]: 37: Hoare triple {2983#(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] {2927#true} is VALID [2022-04-27 17:35:30,013 INFO L290 TraceCheckUtils]: 38: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:35:30,013 INFO L290 TraceCheckUtils]: 39: Hoare triple {2927#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[] {2927#true} is VALID [2022-04-27 17:35:30,013 INFO L290 TraceCheckUtils]: 40: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:35:30,013 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2927#true} {2983#(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] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-27 17:35:30,014 INFO L290 TraceCheckUtils]: 42: Hoare triple {2983#(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[] {3062#(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 17:35:30,015 INFO L290 TraceCheckUtils]: 43: Hoare triple {3062#(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] {3066#(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 17:35:30,016 INFO L290 TraceCheckUtils]: 44: Hoare triple {3066#(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] {3070#(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 17:35:30,016 INFO L290 TraceCheckUtils]: 45: Hoare triple {3070#(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] {3074#(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 17:35:30,016 INFO L272 TraceCheckUtils]: 46: Hoare triple {3074#(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] {2927#true} is VALID [2022-04-27 17:35:30,017 INFO L290 TraceCheckUtils]: 47: Hoare triple {2927#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] {3081#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:35:30,017 INFO L290 TraceCheckUtils]: 48: Hoare triple {3081#(= |__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[] {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:35:30,017 INFO L290 TraceCheckUtils]: 49: Hoare triple {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:35:30,019 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} {3074#(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] {3092#(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 17:35:30,019 INFO L290 TraceCheckUtils]: 51: Hoare triple {3092#(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[] {3096#(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 17:35:30,719 INFO L290 TraceCheckUtils]: 52: Hoare triple {3096#(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] {3100#(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 17:35:30,730 INFO L272 TraceCheckUtils]: 53: Hoare triple {3100#(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] {3104#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:35:30,731 INFO L290 TraceCheckUtils]: 54: Hoare triple {3104#(<= 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] {3108#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:35:30,731 INFO L290 TraceCheckUtils]: 55: Hoare triple {3108#(<= 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[] {2928#false} is VALID [2022-04-27 17:35:30,731 INFO L290 TraceCheckUtils]: 56: Hoare triple {2928#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2928#false} is VALID [2022-04-27 17:35:30,732 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 17:35:30,732 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:35:36,484 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:35:42,341 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:36:25,446 INFO L290 TraceCheckUtils]: 56: Hoare triple {2928#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2928#false} is VALID [2022-04-27 17:36:25,447 INFO L290 TraceCheckUtils]: 55: Hoare triple {3108#(<= 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[] {2928#false} is VALID [2022-04-27 17:36:25,447 INFO L290 TraceCheckUtils]: 54: Hoare triple {3104#(<= 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] {3108#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:36:25,448 INFO L272 TraceCheckUtils]: 53: Hoare triple {3124#(= (+ (* 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] {3104#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:36:25,449 INFO L290 TraceCheckUtils]: 52: Hoare triple {3128#(= (+ (* 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] {3124#(= (+ (* 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 17:36:25,449 INFO L290 TraceCheckUtils]: 51: Hoare triple {3132#(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[] {3128#(= (+ (* 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 17:36:25,450 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} {3136#(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] {3132#(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 17:36:25,451 INFO L290 TraceCheckUtils]: 49: Hoare triple {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:36:25,451 INFO L290 TraceCheckUtils]: 48: Hoare triple {3146#(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[] {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:36:25,451 INFO L290 TraceCheckUtils]: 47: Hoare triple {2927#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] {3146#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 17:36:25,451 INFO L272 TraceCheckUtils]: 46: Hoare triple {3136#(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] {2927#true} is VALID [2022-04-27 17:36:27,466 WARN L290 TraceCheckUtils]: 45: Hoare triple {3153#(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] {3136#(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 17:36:27,490 INFO L290 TraceCheckUtils]: 44: Hoare triple {3157#(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] {3153#(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 17:36:29,955 WARN L290 TraceCheckUtils]: 43: Hoare triple {3161#(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] {3157#(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 17:36:29,994 INFO L290 TraceCheckUtils]: 42: Hoare triple {2927#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[] {3161#(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 17:36:29,995 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2927#true} {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L290 TraceCheckUtils]: 40: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L290 TraceCheckUtils]: 39: Hoare triple {2927#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[] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L290 TraceCheckUtils]: 38: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L272 TraceCheckUtils]: 37: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L290 TraceCheckUtils]: 36: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L290 TraceCheckUtils]: 35: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L290 TraceCheckUtils]: 34: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L290 TraceCheckUtils]: 33: Hoare triple {2927#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[] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2927#true} {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L290 TraceCheckUtils]: 31: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L290 TraceCheckUtils]: 30: Hoare triple {2927#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[] {2927#true} is VALID [2022-04-27 17:36:29,995 INFO L290 TraceCheckUtils]: 29: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L272 TraceCheckUtils]: 28: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L290 TraceCheckUtils]: 27: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L290 TraceCheckUtils]: 26: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L290 TraceCheckUtils]: 25: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L290 TraceCheckUtils]: 24: Hoare triple {2927#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[] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2927#true} {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L290 TraceCheckUtils]: 22: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L290 TraceCheckUtils]: 21: Hoare triple {2927#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[] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L290 TraceCheckUtils]: 20: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L272 TraceCheckUtils]: 19: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L290 TraceCheckUtils]: 18: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L290 TraceCheckUtils]: 17: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2927#true} {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,996 INFO L290 TraceCheckUtils]: 15: Hoare triple {2927#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L290 TraceCheckUtils]: 14: Hoare triple {2927#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[] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L290 TraceCheckUtils]: 13: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L272 TraceCheckUtils]: 12: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L290 TraceCheckUtils]: 11: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2927#true} {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L290 TraceCheckUtils]: 9: Hoare triple {2927#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L290 TraceCheckUtils]: 8: Hoare triple {2927#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[] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L290 TraceCheckUtils]: 7: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L272 TraceCheckUtils]: 6: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L290 TraceCheckUtils]: 5: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L272 TraceCheckUtils]: 4: Hoare triple {2927#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2927#true} {2927#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:36:29,997 INFO L290 TraceCheckUtils]: 2: Hoare triple {2927#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:36:29,998 INFO L290 TraceCheckUtils]: 1: Hoare triple {2927#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] {2927#true} is VALID [2022-04-27 17:36:29,998 INFO L272 TraceCheckUtils]: 0: Hoare triple {2927#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-27 17:36:29,998 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 17:36:29,998 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:36:29,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [266585913] [2022-04-27 17:36:29,998 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:36:29,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [359804371] [2022-04-27 17:36:29,998 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [359804371] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:36:29,998 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:36:29,998 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13] total 25 [2022-04-27 17:36:29,998 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [635417093] [2022-04-27 17:36:29,999 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:36:29,999 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 17:36:29,999 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:36:29,999 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 17:36:35,488 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 17:36:35,488 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-27 17:36:35,488 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:36:35,489 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-27 17:36:35,489 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=98, Invalid=498, Unknown=4, NotChecked=0, Total=600 [2022-04-27 17:36:35,489 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 17:36:56,940 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:36:56,940 INFO L93 Difference]: Finished difference Result 60 states and 72 transitions. [2022-04-27 17:36:56,940 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-27 17:36:56,940 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 17:36:56,940 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:36:56,941 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 17:36:56,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 44 transitions. [2022-04-27 17:36:56,942 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 17:36:56,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 44 transitions. [2022-04-27 17:36:56,943 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 44 transitions. [2022-04-27 17:37:00,573 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 43 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 17:37:00,574 INFO L225 Difference]: With dead ends: 60 [2022-04-27 17:37:00,574 INFO L226 Difference]: Without dead ends: 0 [2022-04-27 17:37:00,574 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 89 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 277 ImplicationChecksByTransitivity, 34.9s TimeCoverageRelationStatistics Valid=242, Invalid=1086, Unknown=4, NotChecked=0, Total=1332 [2022-04-27 17:37:00,575 INFO L413 NwaCegarLoop]: 16 mSDtfsCounter, 29 mSDsluCounter, 135 mSDsCounter, 0 mSdLazyCounter, 283 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 151 SdHoareTripleChecker+Invalid, 344 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 283 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 42 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-27 17:37:00,575 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [31 Valid, 151 Invalid, 344 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 283 Invalid, 0 Unknown, 42 Unchecked, 2.2s Time] [2022-04-27 17:37:00,575 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-27 17:37:00,575 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-27 17:37:00,575 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:37:00,575 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 17:37:00,575 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 17:37:00,575 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 17:37:00,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:37:00,576 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 17:37:00,576 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 17:37:00,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:37:00,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:37:00,576 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 17:37:00,576 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 17:37:00,576 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:37:00,576 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 17:37:00,576 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 17:37:00,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:37:00,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:37:00,576 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:37:00,576 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:37:00,576 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 17:37:00,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-27 17:37:00,576 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 57 [2022-04-27 17:37:00,576 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:37:00,577 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-27 17:37:00,577 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 17:37:00,577 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 17:37:00,577 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:37:00,579 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 17:37:00,583 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 17:37:00,779 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 17:37:00,782 INFO L356 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1, 1] [2022-04-27 17:37:00,783 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 17:37:00,784 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 05:37:00 BasicIcfg [2022-04-27 17:37:00,784 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 17:37:00,785 INFO L158 Benchmark]: Toolchain (without parser) took 287294.30ms. Allocated memory was 204.5MB in the beginning and 303.0MB in the end (delta: 98.6MB). Free memory was 150.9MB in the beginning and 240.3MB in the end (delta: -89.5MB). Peak memory consumption was 10.1MB. Max. memory is 8.0GB. [2022-04-27 17:37:00,785 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 204.5MB. Free memory is still 167.2MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 17:37:00,785 INFO L158 Benchmark]: CACSL2BoogieTranslator took 259.33ms. Allocated memory is still 204.5MB. Free memory was 150.7MB in the beginning and 176.3MB in the end (delta: -25.6MB). Peak memory consumption was 5.9MB. Max. memory is 8.0GB. [2022-04-27 17:37:00,785 INFO L158 Benchmark]: Boogie Preprocessor took 32.98ms. Allocated memory is still 204.5MB. Free memory was 176.3MB in the beginning and 175.0MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-27 17:37:00,786 INFO L158 Benchmark]: RCFGBuilder took 288.24ms. Allocated memory is still 204.5MB. Free memory was 174.8MB in the beginning and 162.7MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-27 17:37:00,786 INFO L158 Benchmark]: IcfgTransformer took 35.77ms. Allocated memory is still 204.5MB. Free memory was 162.7MB in the beginning and 160.9MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-27 17:37:00,786 INFO L158 Benchmark]: TraceAbstraction took 286673.60ms. Allocated memory was 204.5MB in the beginning and 303.0MB in the end (delta: 98.6MB). Free memory was 160.3MB in the beginning and 240.3MB in the end (delta: -80.1MB). Peak memory consumption was 18.9MB. Max. memory is 8.0GB. [2022-04-27 17:37:00,787 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.10ms. Allocated memory is still 204.5MB. Free memory is still 167.2MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 259.33ms. Allocated memory is still 204.5MB. Free memory was 150.7MB in the beginning and 176.3MB in the end (delta: -25.6MB). Peak memory consumption was 5.9MB. Max. memory is 8.0GB. * Boogie Preprocessor took 32.98ms. Allocated memory is still 204.5MB. Free memory was 176.3MB in the beginning and 175.0MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 288.24ms. Allocated memory is still 204.5MB. Free memory was 174.8MB in the beginning and 162.7MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 35.77ms. Allocated memory is still 204.5MB. Free memory was 162.7MB in the beginning and 160.9MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 286673.60ms. Allocated memory was 204.5MB in the beginning and 303.0MB in the end (delta: 98.6MB). Free memory was 160.3MB in the beginning and 240.3MB in the end (delta: -80.1MB). Peak memory consumption was 18.9MB. Max. memory is 8.0GB. * 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: 286.6s, OverallIterations: 8, TraceHistogramMax: 5, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 46.5s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 5 mSolverCounterUnknown, 159 SdHoareTripleChecker+Valid, 13.8s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 150 mSDsluCounter, 991 SdHoareTripleChecker+Invalid, 13.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 109 IncrementalHoareTripleChecker+Unchecked, 798 mSDsCounter, 102 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1214 IncrementalHoareTripleChecker+Invalid, 1430 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 102 mSolverCounterUnsat, 193 mSDtfsCounter, 1214 mSolverCounterSat, 0.1s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 632 GetRequests, 491 SyntacticMatches, 6 SemanticMatches, 135 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 672 ImplicationChecksByTransitivity, 41.2s 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.1s AutomataMinimizationTime, 8 MinimizatonAttempts, 43 StatesRemovedByMinimization, 6 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.4s SatisfiabilityAnalysisTime, 230.0s 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 RESULT: Ultimate proved your program to be correct! [2022-04-27 17:37:01,000 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 17:37:01,043 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 137 Received shutdown request...