/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_unwindbound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 17:29:08,479 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 17:29:08,480 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 17:29:08,531 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 17:29:08,531 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 17:29:08,531 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 17:29:08,532 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 17:29:08,533 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 17:29:08,534 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 17:29:08,534 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 17:29:08,535 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 17:29:08,536 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 17:29:08,536 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 17:29:08,536 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 17:29:08,537 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 17:29:08,537 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 17:29:08,538 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 17:29:08,538 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 17:29:08,539 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 17:29:08,540 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 17:29:08,541 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 17:29:08,542 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 17:29:08,542 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 17:29:08,543 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 17:29:08,543 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 17:29:08,545 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 17:29:08,545 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 17:29:08,545 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 17:29:08,546 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 17:29:08,546 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 17:29:08,546 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 17:29:08,547 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 17:29:08,547 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 17:29:08,547 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 17:29:08,548 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 17:29:08,548 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 17:29:08,549 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 17:29:08,549 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 17:29:08,549 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 17:29:08,549 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 17:29:08,550 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 17:29:08,550 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 17:29:08,551 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-27 17:29:08,556 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 17:29:08,556 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 17:29:08,557 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 17:29:08,557 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 17:29:08,557 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 17:29:08,557 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 17:29:08,557 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 17:29:08,557 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 17:29:08,557 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 17:29:08,558 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 17:29:08,558 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 17:29:08,558 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 17:29:08,558 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 17:29:08,558 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 17:29:08,558 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 17:29:08,558 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 17:29:08,558 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-27 17:29:08,559 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 17:29:08,559 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 17:29:08,559 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 17:29:08,559 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 17:29:08,559 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-27 17:29:08,560 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:29:08,725 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 17:29:08,748 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 17:29:08,749 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 17:29:08,750 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 17:29:08,751 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 17:29:08,752 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound50.c [2022-04-27 17:29:08,789 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/170f67435/30214b12200d4491886952bca57b032a/FLAG80884dedf [2022-04-27 17:29:09,135 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 17:29:09,136 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound50.c [2022-04-27 17:29:09,140 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/170f67435/30214b12200d4491886952bca57b032a/FLAG80884dedf [2022-04-27 17:29:09,583 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/170f67435/30214b12200d4491886952bca57b032a [2022-04-27 17:29:09,585 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 17:29:09,586 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-27 17:29:09,588 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 17:29:09,588 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 17:29:09,590 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 17:29:09,591 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 05:29:09" (1/1) ... [2022-04-27 17:29:09,592 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4d1e1e00 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:29:09, skipping insertion in model container [2022-04-27 17:29:09,592 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 05:29:09" (1/1) ... [2022-04-27 17:29:09,596 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 17:29:09,605 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 17:29:09,713 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_unwindbound50.c[597,610] [2022-04-27 17:29:09,733 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 17:29:09,738 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 17:29:09,759 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_unwindbound50.c[597,610] [2022-04-27 17:29:09,775 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 17:29:09,783 INFO L208 MainTranslator]: Completed translation [2022-04-27 17:29:09,783 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:29:09 WrapperNode [2022-04-27 17:29:09,783 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 17:29:09,784 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 17:29:09,784 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 17:29:09,784 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 17:29:09,791 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:29:09" (1/1) ... [2022-04-27 17:29:09,791 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:29:09" (1/1) ... [2022-04-27 17:29:09,796 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:29:09" (1/1) ... [2022-04-27 17:29:09,796 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:29:09" (1/1) ... [2022-04-27 17:29:09,806 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:29:09" (1/1) ... [2022-04-27 17:29:09,811 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:29:09" (1/1) ... [2022-04-27 17:29:09,815 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:29:09" (1/1) ... [2022-04-27 17:29:09,818 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 17:29:09,819 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 17:29:09,819 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 17:29:09,820 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 17:29:09,820 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:29:09" (1/1) ... [2022-04-27 17:29:09,824 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 17:29:09,831 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:29:09,840 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:29:09,854 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:29:09,865 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 17:29:09,865 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 17:29:09,865 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 17:29:09,865 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 17:29:09,865 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 17:29:09,865 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 17:29:09,865 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 17:29:09,865 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 17:29:09,866 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 17:29:09,866 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 17:29:09,866 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 17:29:09,866 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 17:29:09,866 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 17:29:09,866 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 17:29:09,867 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 17:29:09,867 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 17:29:09,867 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 17:29:09,867 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 17:29:09,867 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 17:29:09,867 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 17:29:09,914 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 17:29:09,915 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 17:29:10,070 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 17:29:10,080 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 17:29:10,083 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 17:29:10,084 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 05:29:10 BoogieIcfgContainer [2022-04-27 17:29:10,085 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 17:29:10,085 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-27 17:29:10,085 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-27 17:29:10,088 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-27 17:29:10,089 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 05:29:10" (1/1) ... [2022-04-27 17:29:10,091 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-27 17:29:10,115 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 05:29:10 BasicIcfg [2022-04-27 17:29:10,116 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-27 17:29:10,116 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 17:29:10,117 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 17:29:10,118 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 17:29:10,119 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 05:29:09" (1/4) ... [2022-04-27 17:29:10,119 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@19112bbb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 05:29:10, skipping insertion in model container [2022-04-27 17:29:10,119 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 05:29:09" (2/4) ... [2022-04-27 17:29:10,119 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@19112bbb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 05:29:10, skipping insertion in model container [2022-04-27 17:29:10,119 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 05:29:10" (3/4) ... [2022-04-27 17:29:10,120 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@19112bbb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 05:29:10, skipping insertion in model container [2022-04-27 17:29:10,120 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 05:29:10" (4/4) ... [2022-04-27 17:29:10,120 INFO L111 eAbstractionObserver]: Analyzing ICFG bresenham-ll_unwindbound50.cJordan [2022-04-27 17:29:10,129 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-27 17:29:10,129 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 17:29:10,152 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 17:29:10,157 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@1be805c9, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@76922c94 [2022-04-27 17:29:10,157 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 17:29:10,165 INFO L276 IsEmpty]: Start isEmpty. Operand has 25 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 17:29:10,169 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-27 17:29:10,169 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:29:10,169 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:29:10,169 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:29:10,172 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:29:10,172 INFO L85 PathProgramCache]: Analyzing trace with hash -498253564, now seen corresponding path program 1 times [2022-04-27 17:29:10,178 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:29:10,178 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2062742859] [2022-04-27 17:29:10,178 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:29:10,179 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:29:10,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:10,303 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 17:29:10,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:10,337 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {28#true} is VALID [2022-04-27 17:29:10,337 INFO L290 TraceCheckUtils]: 1: Hoare triple {28#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28#true} is VALID [2022-04-27 17:29:10,337 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {28#true} {28#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28#true} is VALID [2022-04-27 17:29:10,345 INFO L272 TraceCheckUtils]: 0: Hoare triple {28#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 17:29:10,345 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {28#true} is VALID [2022-04-27 17:29:10,345 INFO L290 TraceCheckUtils]: 2: Hoare triple {28#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28#true} is VALID [2022-04-27 17:29:10,346 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28#true} {28#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28#true} is VALID [2022-04-27 17:29:10,346 INFO L272 TraceCheckUtils]: 4: Hoare triple {28#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28#true} is VALID [2022-04-27 17:29:10,346 INFO L290 TraceCheckUtils]: 5: Hoare triple {28#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {28#true} is VALID [2022-04-27 17:29:10,346 INFO L290 TraceCheckUtils]: 6: Hoare triple {28#true} [71] L31-3-->L31-4: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {29#false} is VALID [2022-04-27 17:29:10,347 INFO L290 TraceCheckUtils]: 7: Hoare triple {29#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {29#false} is VALID [2022-04-27 17:29:10,347 INFO L272 TraceCheckUtils]: 8: Hoare triple {29#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} 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] {29#false} is VALID [2022-04-27 17:29:10,347 INFO L290 TraceCheckUtils]: 9: Hoare triple {29#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {29#false} is VALID [2022-04-27 17:29:10,347 INFO L290 TraceCheckUtils]: 10: Hoare triple {29#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {29#false} is VALID [2022-04-27 17:29:10,348 INFO L290 TraceCheckUtils]: 11: Hoare triple {29#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29#false} is VALID [2022-04-27 17:29:10,348 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 17:29:10,348 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:29:10,348 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2062742859] [2022-04-27 17:29:10,349 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2062742859] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 17:29:10,349 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 17:29:10,349 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 17:29:10,350 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [149217771] [2022-04-27 17:29:10,350 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 17:29:10,353 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-27 17:29:10,354 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:29:10,356 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 17:29:10,373 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:29:10,373 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 17:29:10,373 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:29:10,385 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 17:29:10,386 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 17:29:10,388 INFO L87 Difference]: Start difference. First operand has 25 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 17:29:10,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:10,501 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-27 17:29:10,501 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 17:29:10,501 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-27 17:29:10,501 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:29:10,502 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 17:29:10,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 32 transitions. [2022-04-27 17:29:10,510 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 17:29:10,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 32 transitions. [2022-04-27 17:29:10,514 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 32 transitions. [2022-04-27 17:29:10,547 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:29:10,553 INFO L225 Difference]: With dead ends: 26 [2022-04-27 17:29:10,553 INFO L226 Difference]: Without dead ends: 21 [2022-04-27 17:29:10,554 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 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:29:10,558 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 6 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 31 SdHoareTripleChecker+Invalid, 18 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 17:29:10,560 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 31 Invalid, 18 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 17:29:10,570 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states. [2022-04-27 17:29:10,577 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 20. [2022-04-27 17:29:10,578 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:29:10,578 INFO L82 GeneralOperation]: Start isEquivalent. First operand 21 states. Second operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 17:29:10,579 INFO L74 IsIncluded]: Start isIncluded. First operand 21 states. Second operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 17:29:10,579 INFO L87 Difference]: Start difference. First operand 21 states. Second operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 17:29:10,585 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:10,585 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-27 17:29:10,586 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-27 17:29:10,586 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:29:10,586 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:29:10,587 INFO L74 IsIncluded]: Start isIncluded. First operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 21 states. [2022-04-27 17:29:10,587 INFO L87 Difference]: Start difference. First operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 21 states. [2022-04-27 17:29:10,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:10,590 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-27 17:29:10,590 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-27 17:29:10,590 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:29:10,590 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:29:10,590 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:29:10,591 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:29:10,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 17:29:10,592 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 23 transitions. [2022-04-27 17:29:10,593 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 23 transitions. Word has length 12 [2022-04-27 17:29:10,593 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:29:10,593 INFO L495 AbstractCegarLoop]: Abstraction has 20 states and 23 transitions. [2022-04-27 17:29:10,593 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 17:29:10,594 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 23 transitions. [2022-04-27 17:29:10,594 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-27 17:29:10,595 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:29:10,597 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:29:10,597 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 17:29:10,601 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:29:10,602 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:29:10,602 INFO L85 PathProgramCache]: Analyzing trace with hash -467747580, now seen corresponding path program 1 times [2022-04-27 17:29:10,602 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:29:10,602 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1102845429] [2022-04-27 17:29:10,602 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:29:10,603 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:29:10,625 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:29:10,626 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [740635593] [2022-04-27 17:29:10,626 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:29:10,626 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:29:10,626 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:29:10,628 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:29:10,630 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:29:10,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:10,676 INFO L263 TraceCheckSpWp]: Trace formula consists of 79 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 17:29:10,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:10,686 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:29:10,853 INFO L272 TraceCheckUtils]: 0: Hoare triple {124#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {124#true} is VALID [2022-04-27 17:29:10,853 INFO L290 TraceCheckUtils]: 1: Hoare triple {124#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {124#true} is VALID [2022-04-27 17:29:10,854 INFO L290 TraceCheckUtils]: 2: Hoare triple {124#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {124#true} is VALID [2022-04-27 17:29:10,854 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124#true} {124#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {124#true} is VALID [2022-04-27 17:29:10,854 INFO L272 TraceCheckUtils]: 4: Hoare triple {124#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {124#true} is VALID [2022-04-27 17:29:10,855 INFO L290 TraceCheckUtils]: 5: Hoare triple {124#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {144#(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:29:10,874 INFO L290 TraceCheckUtils]: 6: Hoare triple {144#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {144#(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:29:10,875 INFO L290 TraceCheckUtils]: 7: Hoare triple {144#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {151#(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:29:10,876 INFO L272 TraceCheckUtils]: 8: Hoare triple {151#(and (= main_~xy~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~yx~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {155#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:29:10,877 INFO L290 TraceCheckUtils]: 9: Hoare triple {155#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {159#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:29:10,877 INFO L290 TraceCheckUtils]: 10: Hoare triple {159#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {125#false} is VALID [2022-04-27 17:29:10,877 INFO L290 TraceCheckUtils]: 11: Hoare triple {125#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {125#false} is VALID [2022-04-27 17:29:10,878 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 17:29:10,878 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 17:29:10,878 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:29:10,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1102845429] [2022-04-27 17:29:10,878 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:29:10,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [740635593] [2022-04-27 17:29:10,878 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [740635593] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 17:29:10,878 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 17:29:10,879 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 17:29:10,879 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [819562784] [2022-04-27 17:29:10,879 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 17:29:10,880 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-27 17:29:10,880 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:29:10,880 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 17:29:10,889 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:29:10,889 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 17:29:10,889 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:29:10,890 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 17:29:10,890 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 17:29:10,890 INFO L87 Difference]: Start difference. First operand 20 states and 23 transitions. Second operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 17:29:11,085 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:11,085 INFO L93 Difference]: Finished difference Result 32 states and 38 transitions. [2022-04-27 17:29:11,085 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 17:29:11,085 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-27 17:29:11,086 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:29:11,086 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 17:29:11,088 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-27 17:29:11,088 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 17:29:11,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-27 17:29:11,091 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 39 transitions. [2022-04-27 17:29:11,122 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:29:11,123 INFO L225 Difference]: With dead ends: 32 [2022-04-27 17:29:11,123 INFO L226 Difference]: Without dead ends: 29 [2022-04-27 17:29:11,124 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 7 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:29:11,126 INFO L413 NwaCegarLoop]: 15 mSDtfsCounter, 12 mSDsluCounter, 49 mSDsCounter, 0 mSdLazyCounter, 56 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 64 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 56 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 17:29:11,126 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 64 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 56 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 17:29:11,128 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-27 17:29:11,132 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 28. [2022-04-27 17:29:11,132 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:29:11,133 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:29:11,133 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:29:11,134 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:29:11,136 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:11,136 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2022-04-27 17:29:11,136 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2022-04-27 17:29:11,136 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:29:11,136 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:29:11,136 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 29 states. [2022-04-27 17:29:11,137 INFO L87 Difference]: Start difference. First operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 29 states. [2022-04-27 17:29:11,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:11,139 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2022-04-27 17:29:11,139 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2022-04-27 17:29:11,139 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:29:11,139 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:29:11,139 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:29:11,139 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:29:11,140 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:29:11,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 31 transitions. [2022-04-27 17:29:11,146 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 31 transitions. Word has length 12 [2022-04-27 17:29:11,146 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:29:11,146 INFO L495 AbstractCegarLoop]: Abstraction has 28 states and 31 transitions. [2022-04-27 17:29:11,146 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 17:29:11,146 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2022-04-27 17:29:11,147 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-27 17:29:11,147 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:29:11,148 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:29:11,166 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-27 17:29:11,355 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:29:11,355 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:29:11,356 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:29:11,356 INFO L85 PathProgramCache]: Analyzing trace with hash 1909475431, now seen corresponding path program 1 times [2022-04-27 17:29:11,356 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:29:11,356 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1826131300] [2022-04-27 17:29:11,356 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:29:11,357 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:29:11,366 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:29:11,367 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [415088199] [2022-04-27 17:29:11,367 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:29:11,367 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:29:11,367 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:29:11,370 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:29:11,372 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:29:11,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:11,409 INFO L263 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 17:29:11,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:11,430 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:29:11,670 INFO L272 TraceCheckUtils]: 0: Hoare triple {287#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,670 INFO L290 TraceCheckUtils]: 1: Hoare triple {287#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {287#true} is VALID [2022-04-27 17:29:11,670 INFO L290 TraceCheckUtils]: 2: Hoare triple {287#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,671 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {287#true} {287#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,671 INFO L272 TraceCheckUtils]: 4: Hoare triple {287#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,671 INFO L290 TraceCheckUtils]: 5: Hoare triple {287#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {307#(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:29:11,672 INFO L290 TraceCheckUtils]: 6: Hoare triple {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {307#(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:29:11,672 INFO L290 TraceCheckUtils]: 7: Hoare triple {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {307#(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:29:11,673 INFO L272 TraceCheckUtils]: 8: Hoare triple {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {287#true} is VALID [2022-04-27 17:29:11,673 INFO L290 TraceCheckUtils]: 9: Hoare triple {287#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {287#true} is VALID [2022-04-27 17:29:11,673 INFO L290 TraceCheckUtils]: 10: Hoare triple {287#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,673 INFO L290 TraceCheckUtils]: 11: Hoare triple {287#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,676 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {287#true} {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {307#(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:29:11,677 INFO L290 TraceCheckUtils]: 13: Hoare triple {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {307#(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:29:11,678 INFO L290 TraceCheckUtils]: 14: Hoare triple {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {335#(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:29:11,679 INFO L290 TraceCheckUtils]: 15: Hoare triple {335#(and (= main_~x~0 0) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {339#(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:29:11,679 INFO L290 TraceCheckUtils]: 16: Hoare triple {339#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {339#(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:29:11,680 INFO L290 TraceCheckUtils]: 17: Hoare triple {339#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {346#(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:29:11,681 INFO L272 TraceCheckUtils]: 18: Hoare triple {346#(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))))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {350#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:29:11,681 INFO L290 TraceCheckUtils]: 19: Hoare triple {350#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {354#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:29:11,682 INFO L290 TraceCheckUtils]: 20: Hoare triple {354#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {288#false} is VALID [2022-04-27 17:29:11,682 INFO L290 TraceCheckUtils]: 21: Hoare triple {288#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {288#false} is VALID [2022-04-27 17:29:11,682 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 17:29:11,683 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:29:11,848 INFO L290 TraceCheckUtils]: 21: Hoare triple {288#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {288#false} is VALID [2022-04-27 17:29:11,848 INFO L290 TraceCheckUtils]: 20: Hoare triple {354#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {288#false} is VALID [2022-04-27 17:29:11,850 INFO L290 TraceCheckUtils]: 19: Hoare triple {350#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {354#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:29:11,851 INFO L272 TraceCheckUtils]: 18: Hoare triple {370#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {350#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:29:11,852 INFO L290 TraceCheckUtils]: 17: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {370#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} is VALID [2022-04-27 17:29:11,852 INFO L290 TraceCheckUtils]: 16: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {374#(= (+ (* 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:29:11,915 INFO L290 TraceCheckUtils]: 15: Hoare triple {381#(= (+ (* (* 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))))} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {374#(= (+ (* 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:29:11,916 INFO L290 TraceCheckUtils]: 14: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {381#(= (+ (* (* 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:29:11,917 INFO L290 TraceCheckUtils]: 13: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {374#(= (+ (* 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:29:11,918 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {287#true} {374#(= (+ (* 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] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {374#(= (+ (* 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:29:11,918 INFO L290 TraceCheckUtils]: 11: Hoare triple {287#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,918 INFO L290 TraceCheckUtils]: 10: Hoare triple {287#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,918 INFO L290 TraceCheckUtils]: 9: Hoare triple {287#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {287#true} is VALID [2022-04-27 17:29:11,919 INFO L272 TraceCheckUtils]: 8: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {287#true} is VALID [2022-04-27 17:29:11,919 INFO L290 TraceCheckUtils]: 7: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {374#(= (+ (* 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:29:11,920 INFO L290 TraceCheckUtils]: 6: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {374#(= (+ (* 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:29:11,921 INFO L290 TraceCheckUtils]: 5: Hoare triple {287#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {374#(= (+ (* 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:29:11,921 INFO L272 TraceCheckUtils]: 4: Hoare triple {287#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,921 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {287#true} {287#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,921 INFO L290 TraceCheckUtils]: 2: Hoare triple {287#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,921 INFO L290 TraceCheckUtils]: 1: Hoare triple {287#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {287#true} is VALID [2022-04-27 17:29:11,921 INFO L272 TraceCheckUtils]: 0: Hoare triple {287#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-27 17:29:11,922 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 17:29:11,922 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:29:11,922 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1826131300] [2022-04-27 17:29:11,922 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:29:11,922 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [415088199] [2022-04-27 17:29:11,922 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [415088199] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:29:11,922 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:29:11,922 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-27 17:29:11,923 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1556505559] [2022-04-27 17:29:11,923 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:29:11,923 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 22 [2022-04-27 17:29:11,923 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:29:11,923 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:29:11,951 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:29:11,951 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 17:29:11,951 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:29:11,951 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 17:29:11,951 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 17:29:11,952 INFO L87 Difference]: Start difference. First operand 28 states and 31 transitions. Second operand has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:29:12,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:12,409 INFO L93 Difference]: Finished difference Result 43 states and 50 transitions. [2022-04-27 17:29:12,409 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 17:29:12,409 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 22 [2022-04-27 17:29:12,409 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:29:12,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:29:12,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 48 transitions. [2022-04-27 17:29:12,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:29:12,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 48 transitions. [2022-04-27 17:29:12,414 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 48 transitions. [2022-04-27 17:29:12,468 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:29:12,469 INFO L225 Difference]: With dead ends: 43 [2022-04-27 17:29:12,469 INFO L226 Difference]: Without dead ends: 38 [2022-04-27 17:29:12,469 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 47 GetRequests, 32 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:29:12,470 INFO L413 NwaCegarLoop]: 15 mSDtfsCounter, 18 mSDsluCounter, 77 mSDsCounter, 0 mSdLazyCounter, 153 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 92 SdHoareTripleChecker+Invalid, 161 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 153 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 17:29:12,470 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 92 Invalid, 161 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 153 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 17:29:12,471 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-27 17:29:12,472 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 36. [2022-04-27 17:29:12,472 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:29:12,473 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 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:29:12,473 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 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:29:12,473 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 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:29:12,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:12,475 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-27 17:29:12,475 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-27 17:29:12,475 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:29:12,475 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:29:12,475 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 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 38 states. [2022-04-27 17:29:12,475 INFO L87 Difference]: Start difference. First operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 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 38 states. [2022-04-27 17:29:12,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:12,479 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-27 17:29:12,479 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-27 17:29:12,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:29:12,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:29:12,479 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:29:12,479 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:29:12,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 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:29:12,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 40 transitions. [2022-04-27 17:29:12,481 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 40 transitions. Word has length 22 [2022-04-27 17:29:12,481 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:29:12,481 INFO L495 AbstractCegarLoop]: Abstraction has 36 states and 40 transitions. [2022-04-27 17:29:12,481 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 17:29:12,481 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 40 transitions. [2022-04-27 17:29:12,482 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 17:29:12,482 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:29:12,482 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:29:12,499 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:29:12,695 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:29:12,695 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:29:12,696 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:29:12,696 INFO L85 PathProgramCache]: Analyzing trace with hash 1519292561, now seen corresponding path program 1 times [2022-04-27 17:29:12,696 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:29:12,696 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [890084520] [2022-04-27 17:29:12,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:29:12,696 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:29:12,708 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:29:12,708 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [363363419] [2022-04-27 17:29:12,708 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:29:12,708 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:29:12,708 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:29:12,709 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:29:12,710 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:29:12,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:12,742 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 17:29:12,748 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:12,749 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:29:12,835 INFO L272 TraceCheckUtils]: 0: Hoare triple {592#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {592#true} is VALID [2022-04-27 17:29:12,836 INFO L290 TraceCheckUtils]: 1: Hoare triple {592#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {600#(<= ~counter~0 0)} is VALID [2022-04-27 17:29:12,836 INFO L290 TraceCheckUtils]: 2: Hoare triple {600#(<= ~counter~0 0)} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {600#(<= ~counter~0 0)} is VALID [2022-04-27 17:29:12,836 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {600#(<= ~counter~0 0)} {592#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {600#(<= ~counter~0 0)} is VALID [2022-04-27 17:29:12,837 INFO L272 TraceCheckUtils]: 4: Hoare triple {600#(<= ~counter~0 0)} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {600#(<= ~counter~0 0)} is VALID [2022-04-27 17:29:12,837 INFO L290 TraceCheckUtils]: 5: Hoare triple {600#(<= ~counter~0 0)} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {600#(<= ~counter~0 0)} is VALID [2022-04-27 17:29:12,838 INFO L290 TraceCheckUtils]: 6: Hoare triple {600#(<= ~counter~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {616#(<= ~counter~0 1)} is VALID [2022-04-27 17:29:12,838 INFO L290 TraceCheckUtils]: 7: Hoare triple {616#(<= ~counter~0 1)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {616#(<= ~counter~0 1)} is VALID [2022-04-27 17:29:12,839 INFO L272 TraceCheckUtils]: 8: Hoare triple {616#(<= ~counter~0 1)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {616#(<= ~counter~0 1)} is VALID [2022-04-27 17:29:12,839 INFO L290 TraceCheckUtils]: 9: Hoare triple {616#(<= ~counter~0 1)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {616#(<= ~counter~0 1)} is VALID [2022-04-27 17:29:12,840 INFO L290 TraceCheckUtils]: 10: Hoare triple {616#(<= ~counter~0 1)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {616#(<= ~counter~0 1)} is VALID [2022-04-27 17:29:12,840 INFO L290 TraceCheckUtils]: 11: Hoare triple {616#(<= ~counter~0 1)} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {616#(<= ~counter~0 1)} is VALID [2022-04-27 17:29:12,840 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {616#(<= ~counter~0 1)} {616#(<= ~counter~0 1)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {616#(<= ~counter~0 1)} is VALID [2022-04-27 17:29:12,841 INFO L290 TraceCheckUtils]: 13: Hoare triple {616#(<= ~counter~0 1)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {616#(<= ~counter~0 1)} is VALID [2022-04-27 17:29:12,842 INFO L290 TraceCheckUtils]: 14: Hoare triple {616#(<= ~counter~0 1)} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {616#(<= ~counter~0 1)} is VALID [2022-04-27 17:29:12,842 INFO L290 TraceCheckUtils]: 15: Hoare triple {616#(<= ~counter~0 1)} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {616#(<= ~counter~0 1)} is VALID [2022-04-27 17:29:12,843 INFO L290 TraceCheckUtils]: 16: Hoare triple {616#(<= ~counter~0 1)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {647#(<= |main_#t~post6| 1)} is VALID [2022-04-27 17:29:12,843 INFO L290 TraceCheckUtils]: 17: Hoare triple {647#(<= |main_#t~post6| 1)} [74] L31-1-->L31-4: Formula: (not (< |v_main_#t~post6_3| 50)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {593#false} is VALID [2022-04-27 17:29:12,843 INFO L290 TraceCheckUtils]: 18: Hoare triple {593#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {593#false} is VALID [2022-04-27 17:29:12,843 INFO L272 TraceCheckUtils]: 19: Hoare triple {593#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} 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] {593#false} is VALID [2022-04-27 17:29:12,843 INFO L290 TraceCheckUtils]: 20: Hoare triple {593#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {593#false} is VALID [2022-04-27 17:29:12,844 INFO L290 TraceCheckUtils]: 21: Hoare triple {593#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {593#false} is VALID [2022-04-27 17:29:12,844 INFO L290 TraceCheckUtils]: 22: Hoare triple {593#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {593#false} is VALID [2022-04-27 17:29:12,844 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 17:29:12,844 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:29:12,970 INFO L290 TraceCheckUtils]: 22: Hoare triple {593#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {593#false} is VALID [2022-04-27 17:29:12,970 INFO L290 TraceCheckUtils]: 21: Hoare triple {593#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {593#false} is VALID [2022-04-27 17:29:12,970 INFO L290 TraceCheckUtils]: 20: Hoare triple {593#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {593#false} is VALID [2022-04-27 17:29:12,970 INFO L272 TraceCheckUtils]: 19: Hoare triple {593#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} 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] {593#false} is VALID [2022-04-27 17:29:12,971 INFO L290 TraceCheckUtils]: 18: Hoare triple {593#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {593#false} is VALID [2022-04-27 17:29:12,971 INFO L290 TraceCheckUtils]: 17: Hoare triple {681#(< |main_#t~post6| 50)} [74] L31-1-->L31-4: Formula: (not (< |v_main_#t~post6_3| 50)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {593#false} is VALID [2022-04-27 17:29:12,972 INFO L290 TraceCheckUtils]: 16: Hoare triple {685#(< ~counter~0 50)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {681#(< |main_#t~post6| 50)} is VALID [2022-04-27 17:29:12,972 INFO L290 TraceCheckUtils]: 15: Hoare triple {685#(< ~counter~0 50)} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {685#(< ~counter~0 50)} is VALID [2022-04-27 17:29:12,974 INFO L290 TraceCheckUtils]: 14: Hoare triple {685#(< ~counter~0 50)} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {685#(< ~counter~0 50)} is VALID [2022-04-27 17:29:12,974 INFO L290 TraceCheckUtils]: 13: Hoare triple {685#(< ~counter~0 50)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {685#(< ~counter~0 50)} is VALID [2022-04-27 17:29:12,977 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {592#true} {685#(< ~counter~0 50)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {685#(< ~counter~0 50)} is VALID [2022-04-27 17:29:12,977 INFO L290 TraceCheckUtils]: 11: Hoare triple {592#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {592#true} is VALID [2022-04-27 17:29:12,977 INFO L290 TraceCheckUtils]: 10: Hoare triple {592#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {592#true} is VALID [2022-04-27 17:29:12,977 INFO L290 TraceCheckUtils]: 9: Hoare triple {592#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {592#true} is VALID [2022-04-27 17:29:12,977 INFO L272 TraceCheckUtils]: 8: Hoare triple {685#(< ~counter~0 50)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {592#true} is VALID [2022-04-27 17:29:12,977 INFO L290 TraceCheckUtils]: 7: Hoare triple {685#(< ~counter~0 50)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {685#(< ~counter~0 50)} is VALID [2022-04-27 17:29:12,978 INFO L290 TraceCheckUtils]: 6: Hoare triple {716#(< ~counter~0 49)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {685#(< ~counter~0 50)} is VALID [2022-04-27 17:29:12,978 INFO L290 TraceCheckUtils]: 5: Hoare triple {716#(< ~counter~0 49)} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {716#(< ~counter~0 49)} is VALID [2022-04-27 17:29:12,979 INFO L272 TraceCheckUtils]: 4: Hoare triple {716#(< ~counter~0 49)} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {716#(< ~counter~0 49)} is VALID [2022-04-27 17:29:12,979 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {716#(< ~counter~0 49)} {592#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {716#(< ~counter~0 49)} is VALID [2022-04-27 17:29:12,980 INFO L290 TraceCheckUtils]: 2: Hoare triple {716#(< ~counter~0 49)} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {716#(< ~counter~0 49)} is VALID [2022-04-27 17:29:12,981 INFO L290 TraceCheckUtils]: 1: Hoare triple {592#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {716#(< ~counter~0 49)} is VALID [2022-04-27 17:29:12,981 INFO L272 TraceCheckUtils]: 0: Hoare triple {592#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {592#true} is VALID [2022-04-27 17:29:12,981 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 17:29:12,981 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:29:12,982 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [890084520] [2022-04-27 17:29:12,982 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:29:12,982 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [363363419] [2022-04-27 17:29:12,982 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [363363419] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:29:12,982 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:29:12,982 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-27 17:29:12,982 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1581787526] [2022-04-27 17:29:12,982 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:29:12,983 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 23 [2022-04-27 17:29:12,983 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:29:12,984 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 17:29:13,027 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:29:13,027 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 17:29:13,027 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:29:13,028 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 17:29:13,028 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-27 17:29:13,028 INFO L87 Difference]: Start difference. First operand 36 states and 40 transitions. Second operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 17:29:13,172 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:13,173 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-27 17:29:13,173 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-27 17:29:13,173 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 23 [2022-04-27 17:29:13,173 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:29:13,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 17:29:13,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 71 transitions. [2022-04-27 17:29:13,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 17:29:13,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 71 transitions. [2022-04-27 17:29:13,189 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 71 transitions. [2022-04-27 17:29:13,248 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:29:13,250 INFO L225 Difference]: With dead ends: 71 [2022-04-27 17:29:13,250 INFO L226 Difference]: Without dead ends: 71 [2022-04-27 17:29:13,250 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 39 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-27 17:29:13,251 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 47 mSDsluCounter, 68 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 92 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 17:29:13,251 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [47 Valid, 92 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 17:29:13,251 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-27 17:29:13,254 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 59. [2022-04-27 17:29:13,254 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:29:13,254 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 17:29:13,255 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 17:29:13,255 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 17:29:13,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:13,257 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-27 17:29:13,257 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 77 transitions. [2022-04-27 17:29:13,257 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:29:13,258 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:29:13,258 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 71 states. [2022-04-27 17:29:13,258 INFO L87 Difference]: Start difference. First operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 71 states. [2022-04-27 17:29:13,260 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:13,260 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-27 17:29:13,260 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 77 transitions. [2022-04-27 17:29:13,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:29:13,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:29:13,260 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:29:13,261 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:29:13,261 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 17:29:13,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 67 transitions. [2022-04-27 17:29:13,262 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 67 transitions. Word has length 23 [2022-04-27 17:29:13,262 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:29:13,262 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 67 transitions. [2022-04-27 17:29:13,263 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 17:29:13,263 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 67 transitions. [2022-04-27 17:29:13,263 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 17:29:13,263 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:29:13,263 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:29:13,280 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:29:13,471 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:29:13,471 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:29:13,472 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:29:13,472 INFO L85 PathProgramCache]: Analyzing trace with hash -2036751370, now seen corresponding path program 1 times [2022-04-27 17:29:13,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:29:13,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [298858070] [2022-04-27 17:29:13,472 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:29:13,472 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:29:13,487 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:29:13,487 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [316064176] [2022-04-27 17:29:13,487 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:29:13,487 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:29:13,487 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:29:13,489 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:29:13,490 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:29:13,523 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:13,524 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-27 17:29:13,537 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:13,538 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:29:13,901 INFO L272 TraceCheckUtils]: 0: Hoare triple {1015#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:13,902 INFO L290 TraceCheckUtils]: 1: Hoare triple {1015#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1015#true} is VALID [2022-04-27 17:29:13,911 INFO L290 TraceCheckUtils]: 2: Hoare triple {1015#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:13,911 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1015#true} {1015#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:13,911 INFO L272 TraceCheckUtils]: 4: Hoare triple {1015#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:13,912 INFO L290 TraceCheckUtils]: 5: Hoare triple {1015#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1035#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 17:29:13,912 INFO L290 TraceCheckUtils]: 6: Hoare triple {1035#(and (= main_~x~0 0) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1035#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 17:29:13,913 INFO L290 TraceCheckUtils]: 7: Hoare triple {1035#(and (= main_~x~0 0) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1035#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 17:29:13,913 INFO L272 TraceCheckUtils]: 8: Hoare triple {1035#(and (= main_~x~0 0) (= main_~y~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1015#true} is VALID [2022-04-27 17:29:13,913 INFO L290 TraceCheckUtils]: 9: Hoare triple {1015#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1015#true} is VALID [2022-04-27 17:29:13,913 INFO L290 TraceCheckUtils]: 10: Hoare triple {1015#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:13,913 INFO L290 TraceCheckUtils]: 11: Hoare triple {1015#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:13,915 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1015#true} {1035#(and (= main_~x~0 0) (= main_~y~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1035#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 17:29:13,915 INFO L290 TraceCheckUtils]: 13: Hoare triple {1035#(and (= main_~x~0 0) (= main_~y~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1060#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 17:29:13,915 INFO L290 TraceCheckUtils]: 14: Hoare triple {1060#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {1064#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= (+ (- 1) main_~y~0) 0))} is VALID [2022-04-27 17:29:13,916 INFO L290 TraceCheckUtils]: 15: Hoare triple {1064#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= (+ (- 1) main_~y~0) 0))} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1068#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} is VALID [2022-04-27 17:29:13,916 INFO L290 TraceCheckUtils]: 16: Hoare triple {1068#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1068#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} is VALID [2022-04-27 17:29:13,917 INFO L290 TraceCheckUtils]: 17: Hoare triple {1068#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1075#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} is VALID [2022-04-27 17:29:13,917 INFO L272 TraceCheckUtils]: 18: Hoare triple {1075#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1015#true} is VALID [2022-04-27 17:29:13,918 INFO L290 TraceCheckUtils]: 19: Hoare triple {1015#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1082#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:29:13,918 INFO L290 TraceCheckUtils]: 20: Hoare triple {1082#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:13,918 INFO L290 TraceCheckUtils]: 21: Hoare triple {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:13,919 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} {1075#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1093#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* 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 1) (<= 0 main_~X~0))} is VALID [2022-04-27 17:29:13,920 INFO L290 TraceCheckUtils]: 23: Hoare triple {1093#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* 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 1) (<= 0 main_~X~0))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1097#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* 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 1) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)))} is VALID [2022-04-27 17:29:13,920 INFO L290 TraceCheckUtils]: 24: Hoare triple {1097#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* 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 1) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1101#(and (not (<= 1 main_~X~0)) (= (+ (- 1) main_~y~0) 0) (= main_~y~0 main_~xy~0) (<= 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:29:13,921 INFO L272 TraceCheckUtils]: 25: Hoare triple {1101#(and (not (<= 1 main_~X~0)) (= (+ (- 1) main_~y~0) 0) (= main_~y~0 main_~xy~0) (<= 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))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} 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] {1105#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:29:13,922 INFO L290 TraceCheckUtils]: 26: Hoare triple {1105#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1109#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:29:13,922 INFO L290 TraceCheckUtils]: 27: Hoare triple {1109#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1016#false} is VALID [2022-04-27 17:29:13,923 INFO L290 TraceCheckUtils]: 28: Hoare triple {1016#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1016#false} is VALID [2022-04-27 17:29:13,923 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 17:29:13,923 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:29:14,569 INFO L290 TraceCheckUtils]: 28: Hoare triple {1016#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1016#false} is VALID [2022-04-27 17:29:14,570 INFO L290 TraceCheckUtils]: 27: Hoare triple {1109#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1016#false} is VALID [2022-04-27 17:29:14,570 INFO L290 TraceCheckUtils]: 26: Hoare triple {1105#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1109#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:29:14,571 INFO L272 TraceCheckUtils]: 25: Hoare triple {1125#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} 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] {1105#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:29:14,572 INFO L290 TraceCheckUtils]: 24: Hoare triple {1129#(= (+ (* 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))))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1125#(= (+ (* 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:29:14,572 INFO L290 TraceCheckUtils]: 23: Hoare triple {1133#(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)))))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1129#(= (+ (* 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:29:14,573 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} {1137#(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)))))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1133#(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:29:14,573 INFO L290 TraceCheckUtils]: 21: Hoare triple {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:14,574 INFO L290 TraceCheckUtils]: 20: Hoare triple {1147#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:14,574 INFO L290 TraceCheckUtils]: 19: Hoare triple {1015#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1147#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 17:29:14,574 INFO L272 TraceCheckUtils]: 18: Hoare triple {1137#(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)))))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1015#true} is VALID [2022-04-27 17:29:14,575 INFO L290 TraceCheckUtils]: 17: Hoare triple {1154#(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))))))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1137#(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:29:14,575 INFO L290 TraceCheckUtils]: 16: Hoare triple {1154#(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))))))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1154#(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:29:14,577 INFO L290 TraceCheckUtils]: 15: Hoare triple {1161#(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))))))} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1154#(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:29:14,578 INFO L290 TraceCheckUtils]: 14: Hoare triple {1165#(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))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {1161#(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:29:14,579 INFO L290 TraceCheckUtils]: 13: Hoare triple {1015#true} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1165#(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:29:14,580 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1015#true} {1015#true} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1015#true} is VALID [2022-04-27 17:29:14,580 INFO L290 TraceCheckUtils]: 11: Hoare triple {1015#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:14,580 INFO L290 TraceCheckUtils]: 10: Hoare triple {1015#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:14,580 INFO L290 TraceCheckUtils]: 9: Hoare triple {1015#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1015#true} is VALID [2022-04-27 17:29:14,580 INFO L272 TraceCheckUtils]: 8: Hoare triple {1015#true} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1015#true} is VALID [2022-04-27 17:29:14,580 INFO L290 TraceCheckUtils]: 7: Hoare triple {1015#true} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1015#true} is VALID [2022-04-27 17:29:14,580 INFO L290 TraceCheckUtils]: 6: Hoare triple {1015#true} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1015#true} is VALID [2022-04-27 17:29:14,580 INFO L290 TraceCheckUtils]: 5: Hoare triple {1015#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1015#true} is VALID [2022-04-27 17:29:14,580 INFO L272 TraceCheckUtils]: 4: Hoare triple {1015#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:14,580 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1015#true} {1015#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:14,581 INFO L290 TraceCheckUtils]: 2: Hoare triple {1015#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:14,581 INFO L290 TraceCheckUtils]: 1: Hoare triple {1015#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1015#true} is VALID [2022-04-27 17:29:14,581 INFO L272 TraceCheckUtils]: 0: Hoare triple {1015#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-27 17:29:14,581 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 10 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 17:29:14,581 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:29:14,581 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [298858070] [2022-04-27 17:29:14,581 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:29:14,581 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [316064176] [2022-04-27 17:29:14,581 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [316064176] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:29:14,581 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:29:14,581 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 22 [2022-04-27 17:29:14,582 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [460706522] [2022-04-27 17:29:14,582 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:29:14,582 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 29 [2022-04-27 17:29:14,582 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:29:14,582 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 17:29:14,617 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:29:14,617 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-27 17:29:14,617 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:29:14,618 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-27 17:29:14,618 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-27 17:29:14,618 INFO L87 Difference]: Start difference. First operand 59 states and 67 transitions. Second operand has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 17:29:15,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:15,418 INFO L93 Difference]: Finished difference Result 82 states and 95 transitions. [2022-04-27 17:29:15,418 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-27 17:29:15,418 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 29 [2022-04-27 17:29:15,419 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:29:15,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 17:29:15,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 59 transitions. [2022-04-27 17:29:15,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 17:29:15,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 59 transitions. [2022-04-27 17:29:15,422 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 59 transitions. [2022-04-27 17:29:15,474 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:29:15,475 INFO L225 Difference]: With dead ends: 82 [2022-04-27 17:29:15,475 INFO L226 Difference]: Without dead ends: 76 [2022-04-27 17:29:15,476 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 37 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 259 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=216, Invalid=1116, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 17:29:15,477 INFO L413 NwaCegarLoop]: 15 mSDtfsCounter, 42 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 176 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 111 SdHoareTripleChecker+Invalid, 275 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 176 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 72 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 17:29:15,477 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [43 Valid, 111 Invalid, 275 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 176 Invalid, 0 Unknown, 72 Unchecked, 0.2s Time] [2022-04-27 17:29:15,477 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-27 17:29:15,480 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 67. [2022-04-27 17:29:15,480 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:29:15,481 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 17:29:15,481 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 17:29:15,481 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 17:29:15,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:15,483 INFO L93 Difference]: Finished difference Result 76 states and 87 transitions. [2022-04-27 17:29:15,483 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 87 transitions. [2022-04-27 17:29:15,483 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:29:15,484 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:29:15,484 INFO L74 IsIncluded]: Start isIncluded. First operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 76 states. [2022-04-27 17:29:15,484 INFO L87 Difference]: Start difference. First operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 76 states. [2022-04-27 17:29:15,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:15,486 INFO L93 Difference]: Finished difference Result 76 states and 87 transitions. [2022-04-27 17:29:15,486 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 87 transitions. [2022-04-27 17:29:15,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:29:15,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:29:15,486 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:29:15,486 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:29:15,487 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 17:29:15,492 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 76 transitions. [2022-04-27 17:29:15,492 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 76 transitions. Word has length 29 [2022-04-27 17:29:15,492 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:29:15,493 INFO L495 AbstractCegarLoop]: Abstraction has 67 states and 76 transitions. [2022-04-27 17:29:15,493 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 17:29:15,493 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 76 transitions. [2022-04-27 17:29:15,493 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 17:29:15,493 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:29:15,493 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:29:15,514 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:29:15,703 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:29:15,703 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:29:15,704 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:29:15,704 INFO L85 PathProgramCache]: Analyzing trace with hash -782335822, now seen corresponding path program 1 times [2022-04-27 17:29:15,704 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:29:15,704 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1952843766] [2022-04-27 17:29:15,704 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:29:15,704 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:29:15,714 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:29:15,714 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1068227769] [2022-04-27 17:29:15,714 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:29:15,714 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:29:15,714 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:29:15,715 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:29:15,717 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:29:15,776 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:15,777 INFO L263 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-27 17:29:15,790 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:29:15,791 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:29:28,618 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:29:37,118 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:29:41,923 INFO L272 TraceCheckUtils]: 0: Hoare triple {1542#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:41,924 INFO L290 TraceCheckUtils]: 1: Hoare triple {1542#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1542#true} is VALID [2022-04-27 17:29:41,924 INFO L290 TraceCheckUtils]: 2: Hoare triple {1542#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:41,924 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1542#true} {1542#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:41,924 INFO L272 TraceCheckUtils]: 4: Hoare triple {1542#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:41,924 INFO L290 TraceCheckUtils]: 5: Hoare triple {1542#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1562#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} is VALID [2022-04-27 17:29:41,925 INFO L290 TraceCheckUtils]: 6: Hoare triple {1562#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1562#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} is VALID [2022-04-27 17:29:41,925 INFO L290 TraceCheckUtils]: 7: Hoare triple {1562#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1569#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} is VALID [2022-04-27 17:29:41,925 INFO L272 TraceCheckUtils]: 8: Hoare triple {1569#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1542#true} is VALID [2022-04-27 17:29:41,926 INFO L290 TraceCheckUtils]: 9: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1576#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:29:41,931 INFO L290 TraceCheckUtils]: 10: Hoare triple {1576#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:41,932 INFO L290 TraceCheckUtils]: 11: Hoare triple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:41,932 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} {1569#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:41,932 INFO L290 TraceCheckUtils]: 13: Hoare triple {1587#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:41,933 INFO L290 TraceCheckUtils]: 14: Hoare triple {1587#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:41,933 INFO L290 TraceCheckUtils]: 15: Hoare triple {1587#(= main_~y~0 0)} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:41,933 INFO L290 TraceCheckUtils]: 16: Hoare triple {1587#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:41,933 INFO L290 TraceCheckUtils]: 17: Hoare triple {1587#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:41,934 INFO L272 TraceCheckUtils]: 18: Hoare triple {1587#(= main_~y~0 0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1542#true} is VALID [2022-04-27 17:29:41,934 INFO L290 TraceCheckUtils]: 19: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1542#true} is VALID [2022-04-27 17:29:41,934 INFO L290 TraceCheckUtils]: 20: Hoare triple {1542#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:41,934 INFO L290 TraceCheckUtils]: 21: Hoare triple {1542#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:41,934 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1542#true} {1587#(= main_~y~0 0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:41,934 INFO L290 TraceCheckUtils]: 23: Hoare triple {1587#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:41,935 INFO L290 TraceCheckUtils]: 24: Hoare triple {1587#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:41,938 INFO L290 TraceCheckUtils]: 25: Hoare triple {1587#(= main_~y~0 0)} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:41,938 INFO L290 TraceCheckUtils]: 26: Hoare triple {1587#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:41,939 INFO L290 TraceCheckUtils]: 27: Hoare triple {1587#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1633#(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:29:41,939 INFO L272 TraceCheckUtils]: 28: Hoare triple {1633#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1542#true} is VALID [2022-04-27 17:29:41,939 INFO L290 TraceCheckUtils]: 29: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1576#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:29:41,939 INFO L290 TraceCheckUtils]: 30: Hoare triple {1576#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:41,939 INFO L290 TraceCheckUtils]: 31: Hoare triple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:41,940 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} {1633#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1649#(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:29:41,941 INFO L290 TraceCheckUtils]: 33: Hoare triple {1649#(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))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1649#(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:29:43,942 WARN L290 TraceCheckUtils]: 34: Hoare triple {1649#(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))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1656#(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:29:43,944 INFO L272 TraceCheckUtils]: 35: Hoare triple {1656#(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))))))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} 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] {1660#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:29:43,944 INFO L290 TraceCheckUtils]: 36: Hoare triple {1660#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1664#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:29:43,945 INFO L290 TraceCheckUtils]: 37: Hoare triple {1664#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1543#false} is VALID [2022-04-27 17:29:43,945 INFO L290 TraceCheckUtils]: 38: Hoare triple {1543#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#false} is VALID [2022-04-27 17:29:43,945 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 10 proven. 11 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-27 17:29:43,945 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:29:45,815 INFO L290 TraceCheckUtils]: 38: Hoare triple {1543#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#false} is VALID [2022-04-27 17:29:45,815 INFO L290 TraceCheckUtils]: 37: Hoare triple {1664#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1543#false} is VALID [2022-04-27 17:29:45,816 INFO L290 TraceCheckUtils]: 36: Hoare triple {1660#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1664#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 17:29:45,816 INFO L272 TraceCheckUtils]: 35: Hoare triple {1680#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} 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] {1660#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 17:29:45,817 INFO L290 TraceCheckUtils]: 34: Hoare triple {1684#(= (+ (* 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))))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1680#(= (+ (* 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:29:45,818 INFO L290 TraceCheckUtils]: 33: Hoare triple {1684#(= (+ (* 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))))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1684#(= (+ (* 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:29:45,819 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} {1691#(= (+ (* 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))))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1684#(= (+ (* 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:29:45,819 INFO L290 TraceCheckUtils]: 31: Hoare triple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:45,819 INFO L290 TraceCheckUtils]: 30: Hoare triple {1701#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:45,820 INFO L290 TraceCheckUtils]: 29: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1701#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 17:29:45,820 INFO L272 TraceCheckUtils]: 28: Hoare triple {1691#(= (+ (* 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))))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1542#true} is VALID [2022-04-27 17:29:45,820 INFO L290 TraceCheckUtils]: 27: Hoare triple {1587#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1691#(= (+ (* 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:29:45,820 INFO L290 TraceCheckUtils]: 26: Hoare triple {1587#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:45,821 INFO L290 TraceCheckUtils]: 25: Hoare triple {1587#(= main_~y~0 0)} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:45,821 INFO L290 TraceCheckUtils]: 24: Hoare triple {1587#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:45,822 INFO L290 TraceCheckUtils]: 23: Hoare triple {1587#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:45,822 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1542#true} {1587#(= main_~y~0 0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:45,822 INFO L290 TraceCheckUtils]: 21: Hoare triple {1542#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:45,823 INFO L290 TraceCheckUtils]: 20: Hoare triple {1542#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:45,823 INFO L290 TraceCheckUtils]: 19: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1542#true} is VALID [2022-04-27 17:29:45,823 INFO L272 TraceCheckUtils]: 18: Hoare triple {1587#(= main_~y~0 0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1542#true} is VALID [2022-04-27 17:29:45,823 INFO L290 TraceCheckUtils]: 17: Hoare triple {1587#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:45,823 INFO L290 TraceCheckUtils]: 16: Hoare triple {1587#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:45,824 INFO L290 TraceCheckUtils]: 15: Hoare triple {1587#(= main_~y~0 0)} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:45,824 INFO L290 TraceCheckUtils]: 14: Hoare triple {1587#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:45,824 INFO L290 TraceCheckUtils]: 13: Hoare triple {1587#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:45,825 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} {1753#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1587#(= main_~y~0 0)} is VALID [2022-04-27 17:29:45,825 INFO L290 TraceCheckUtils]: 11: Hoare triple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:45,826 INFO L290 TraceCheckUtils]: 10: Hoare triple {1701#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 17:29:45,826 INFO L290 TraceCheckUtils]: 9: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1701#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 17:29:45,826 INFO L272 TraceCheckUtils]: 8: Hoare triple {1753#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {1542#true} is VALID [2022-04-27 17:29:45,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {1769#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1753#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} is VALID [2022-04-27 17:29:45,831 INFO L290 TraceCheckUtils]: 6: Hoare triple {1769#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1769#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} is VALID [2022-04-27 17:29:45,833 INFO L290 TraceCheckUtils]: 5: Hoare triple {1542#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1769#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} is VALID [2022-04-27 17:29:45,838 INFO L272 TraceCheckUtils]: 4: Hoare triple {1542#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:45,838 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1542#true} {1542#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:45,838 INFO L290 TraceCheckUtils]: 2: Hoare triple {1542#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:45,838 INFO L290 TraceCheckUtils]: 1: Hoare triple {1542#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1542#true} is VALID [2022-04-27 17:29:45,838 INFO L272 TraceCheckUtils]: 0: Hoare triple {1542#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-27 17:29:45,838 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 12 proven. 9 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-27 17:29:45,838 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:29:45,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1952843766] [2022-04-27 17:29:45,839 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:29:45,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1068227769] [2022-04-27 17:29:45,839 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1068227769] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:29:45,839 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:29:45,839 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 18 [2022-04-27 17:29:45,839 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [660018213] [2022-04-27 17:29:45,839 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:29:45,839 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Word has length 39 [2022-04-27 17:29:45,840 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:29:45,840 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 17:29:47,873 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:29:47,874 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-27 17:29:47,874 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:29:47,874 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-27 17:29:47,874 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2022-04-27 17:29:47,874 INFO L87 Difference]: Start difference. First operand 67 states and 76 transitions. Second operand has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 17:29:50,235 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:29:54,325 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:29:56,350 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:29:58,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:29:58,678 INFO L93 Difference]: Finished difference Result 94 states and 111 transitions. [2022-04-27 17:29:58,678 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 17:29:58,679 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Word has length 39 [2022-04-27 17:29:58,679 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:29:58,679 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 17:29:58,680 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 48 transitions. [2022-04-27 17:29:58,680 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 17:29:58,681 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 48 transitions. [2022-04-27 17:29:58,681 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 48 transitions. [2022-04-27 17:30:00,718 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 47 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 17:30:00,719 INFO L225 Difference]: With dead ends: 94 [2022-04-27 17:30:00,719 INFO L226 Difference]: Without dead ends: 90 [2022-04-27 17:30:00,720 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 59 SyntacticMatches, 2 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 4.6s TimeCoverageRelationStatistics Valid=117, Invalid=433, Unknown=2, NotChecked=0, Total=552 [2022-04-27 17:30:00,720 INFO L413 NwaCegarLoop]: 12 mSDtfsCounter, 34 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 185 mSolverCounterSat, 25 mSolverCounterUnsat, 3 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 213 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 185 IncrementalHoareTripleChecker+Invalid, 3 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.2s IncrementalHoareTripleChecker+Time [2022-04-27 17:30:00,720 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 129 Invalid, 213 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 185 Invalid, 3 Unknown, 0 Unchecked, 6.2s Time] [2022-04-27 17:30:00,721 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-27 17:30:00,724 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 88. [2022-04-27 17:30:00,724 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:30:00,725 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 17:30:00,725 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 17:30:00,725 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 17:30:00,727 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:30:00,727 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2022-04-27 17:30:00,727 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 106 transitions. [2022-04-27 17:30:00,727 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:30:00,727 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:30:00,728 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 90 states. [2022-04-27 17:30:00,728 INFO L87 Difference]: Start difference. First operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 90 states. [2022-04-27 17:30:00,730 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:30:00,730 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2022-04-27 17:30:00,730 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 106 transitions. [2022-04-27 17:30:00,730 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:30:00,730 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:30:00,730 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:30:00,730 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:30:00,731 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 17:30:00,732 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 104 transitions. [2022-04-27 17:30:00,732 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 104 transitions. Word has length 39 [2022-04-27 17:30:00,732 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:30:00,733 INFO L495 AbstractCegarLoop]: Abstraction has 88 states and 104 transitions. [2022-04-27 17:30:00,733 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 17:30:00,733 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 104 transitions. [2022-04-27 17:30:00,733 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 17:30:00,733 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:30:00,733 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:30:00,757 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-27 17:30:00,934 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:30:00,934 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:30:00,934 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:30:00,935 INFO L85 PathProgramCache]: Analyzing trace with hash 1435422131, now seen corresponding path program 1 times [2022-04-27 17:30:00,935 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:30:00,935 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [531998811] [2022-04-27 17:30:00,935 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:30:00,935 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:30:00,944 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:30:00,945 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1432022193] [2022-04-27 17:30:00,945 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:30:00,945 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:30:00,945 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:30:00,946 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:30:00,947 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:30:00,987 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:30:00,988 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 17:30:00,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:30:00,999 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:30:02,050 INFO L272 TraceCheckUtils]: 0: Hoare triple {2167#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,051 INFO L290 TraceCheckUtils]: 1: Hoare triple {2167#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2167#true} is VALID [2022-04-27 17:30:02,051 INFO L290 TraceCheckUtils]: 2: Hoare triple {2167#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,051 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2167#true} {2167#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,051 INFO L272 TraceCheckUtils]: 4: Hoare triple {2167#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,051 INFO L290 TraceCheckUtils]: 5: Hoare triple {2167#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 17:30:02,052 INFO L290 TraceCheckUtils]: 6: Hoare triple {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 17:30:02,052 INFO L290 TraceCheckUtils]: 7: Hoare triple {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 17:30:02,052 INFO L272 TraceCheckUtils]: 8: Hoare triple {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2167#true} is VALID [2022-04-27 17:30:02,053 INFO L290 TraceCheckUtils]: 9: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-27 17:30:02,053 INFO L290 TraceCheckUtils]: 10: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,053 INFO L290 TraceCheckUtils]: 11: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,054 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2167#true} {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 17:30:02,054 INFO L290 TraceCheckUtils]: 13: Hoare triple {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 17:30:02,055 INFO L290 TraceCheckUtils]: 14: Hoare triple {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {2215#(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:30:02,056 INFO L290 TraceCheckUtils]: 15: Hoare triple {2215#(and (<= main_~x~0 0) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2219#(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:30:02,056 INFO L290 TraceCheckUtils]: 16: Hoare triple {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2219#(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:30:02,057 INFO L290 TraceCheckUtils]: 17: Hoare triple {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2219#(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:30:02,057 INFO L272 TraceCheckUtils]: 18: Hoare triple {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2167#true} is VALID [2022-04-27 17:30:02,057 INFO L290 TraceCheckUtils]: 19: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-27 17:30:02,057 INFO L290 TraceCheckUtils]: 20: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,057 INFO L290 TraceCheckUtils]: 21: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,058 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2167#true} {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2219#(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:30:02,058 INFO L290 TraceCheckUtils]: 23: Hoare triple {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2219#(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:30:02,059 INFO L290 TraceCheckUtils]: 24: Hoare triple {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2247#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} is VALID [2022-04-27 17:30:02,059 INFO L290 TraceCheckUtils]: 25: Hoare triple {2247#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-27 17:30:02,060 INFO L290 TraceCheckUtils]: 26: Hoare triple {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-27 17:30:02,060 INFO L290 TraceCheckUtils]: 27: Hoare triple {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-27 17:30:02,060 INFO L272 TraceCheckUtils]: 28: Hoare triple {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2167#true} is VALID [2022-04-27 17:30:02,060 INFO L290 TraceCheckUtils]: 29: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-27 17:30:02,061 INFO L290 TraceCheckUtils]: 30: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,061 INFO L290 TraceCheckUtils]: 31: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,061 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2167#true} {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-27 17:30:02,062 INFO L290 TraceCheckUtils]: 33: Hoare triple {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-27 17:30:02,062 INFO L290 TraceCheckUtils]: 34: Hoare triple {2168#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2168#false} is VALID [2022-04-27 17:30:02,062 INFO L272 TraceCheckUtils]: 35: Hoare triple {2168#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} 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] {2168#false} is VALID [2022-04-27 17:30:02,062 INFO L290 TraceCheckUtils]: 36: Hoare triple {2168#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2168#false} is VALID [2022-04-27 17:30:02,062 INFO L290 TraceCheckUtils]: 37: Hoare triple {2168#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-27 17:30:02,062 INFO L290 TraceCheckUtils]: 38: Hoare triple {2168#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-27 17:30:02,062 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 6 proven. 14 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 17:30:02,063 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:30:02,435 INFO L290 TraceCheckUtils]: 38: Hoare triple {2168#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-27 17:30:02,435 INFO L290 TraceCheckUtils]: 37: Hoare triple {2168#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-27 17:30:02,435 INFO L290 TraceCheckUtils]: 36: Hoare triple {2168#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2168#false} is VALID [2022-04-27 17:30:02,435 INFO L272 TraceCheckUtils]: 35: Hoare triple {2168#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} 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] {2168#false} is VALID [2022-04-27 17:30:02,435 INFO L290 TraceCheckUtils]: 34: Hoare triple {2168#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2168#false} is VALID [2022-04-27 17:30:02,435 INFO L290 TraceCheckUtils]: 33: Hoare triple {2306#(<= main_~x~0 main_~X~0)} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-27 17:30:02,436 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2167#true} {2306#(<= main_~x~0 main_~X~0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2306#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:30:02,436 INFO L290 TraceCheckUtils]: 31: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,436 INFO L290 TraceCheckUtils]: 30: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,436 INFO L290 TraceCheckUtils]: 29: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-27 17:30:02,436 INFO L272 TraceCheckUtils]: 28: Hoare triple {2306#(<= main_~x~0 main_~X~0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2167#true} is VALID [2022-04-27 17:30:02,437 INFO L290 TraceCheckUtils]: 27: Hoare triple {2306#(<= main_~x~0 main_~X~0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2306#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:30:02,438 INFO L290 TraceCheckUtils]: 26: Hoare triple {2306#(<= main_~x~0 main_~X~0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2306#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:30:02,439 INFO L290 TraceCheckUtils]: 25: Hoare triple {2331#(<= (+ main_~x~0 1) main_~X~0)} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2306#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:30:02,439 INFO L290 TraceCheckUtils]: 24: Hoare triple {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2331#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:30:02,439 INFO L290 TraceCheckUtils]: 23: Hoare triple {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 17:30:02,440 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2167#true} {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 17:30:02,440 INFO L290 TraceCheckUtils]: 21: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,440 INFO L290 TraceCheckUtils]: 20: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,440 INFO L290 TraceCheckUtils]: 19: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-27 17:30:02,440 INFO L272 TraceCheckUtils]: 18: Hoare triple {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2167#true} is VALID [2022-04-27 17:30:02,441 INFO L290 TraceCheckUtils]: 17: Hoare triple {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 17:30:02,441 INFO L290 TraceCheckUtils]: 16: Hoare triple {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 17:30:02,442 INFO L290 TraceCheckUtils]: 15: Hoare triple {2363#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 17:30:02,442 INFO L290 TraceCheckUtils]: 14: Hoare triple {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {2363#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} is VALID [2022-04-27 17:30:02,443 INFO L290 TraceCheckUtils]: 13: Hoare triple {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2367#(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:30:02,443 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2167#true} {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2367#(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:30:02,443 INFO L290 TraceCheckUtils]: 11: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,444 INFO L290 TraceCheckUtils]: 10: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,444 INFO L290 TraceCheckUtils]: 9: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-27 17:30:02,444 INFO L272 TraceCheckUtils]: 8: Hoare triple {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2167#true} is VALID [2022-04-27 17:30:02,445 INFO L290 TraceCheckUtils]: 7: Hoare triple {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2367#(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:30:02,446 INFO L290 TraceCheckUtils]: 6: Hoare triple {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2367#(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:30:02,446 INFO L290 TraceCheckUtils]: 5: Hoare triple {2167#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {2367#(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:30:02,446 INFO L272 TraceCheckUtils]: 4: Hoare triple {2167#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,446 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2167#true} {2167#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,447 INFO L290 TraceCheckUtils]: 2: Hoare triple {2167#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,447 INFO L290 TraceCheckUtils]: 1: Hoare triple {2167#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2167#true} is VALID [2022-04-27 17:30:02,447 INFO L272 TraceCheckUtils]: 0: Hoare triple {2167#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-27 17:30:02,447 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 6 proven. 14 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 17:30:02,447 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:30:02,447 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [531998811] [2022-04-27 17:30:02,447 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:30:02,447 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1432022193] [2022-04-27 17:30:02,447 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1432022193] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:30:02,447 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:30:02,447 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-27 17:30:02,448 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [160024768] [2022-04-27 17:30:02,448 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:30:02,449 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Word has length 39 [2022-04-27 17:30:02,449 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:30:02,449 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 17:30:02,488 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:30:02,488 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 17:30:02,488 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:30:02,488 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 17:30:02,488 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-27 17:30:02,488 INFO L87 Difference]: Start difference. First operand 88 states and 104 transitions. Second operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 17:30:02,906 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:30:02,906 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-27 17:30:02,906 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 17:30:02,907 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Word has length 39 [2022-04-27 17:30:02,907 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:30:02,907 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 17:30:02,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 49 transitions. [2022-04-27 17:30:02,908 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 17:30:02,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 49 transitions. [2022-04-27 17:30:02,909 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 49 transitions. [2022-04-27 17:30:02,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:30:02,947 INFO L225 Difference]: With dead ends: 91 [2022-04-27 17:30:02,947 INFO L226 Difference]: Without dead ends: 91 [2022-04-27 17:30:02,947 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 67 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=59, Invalid=181, Unknown=0, NotChecked=0, Total=240 [2022-04-27 17:30:02,947 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 5 mSDsluCounter, 89 mSDsCounter, 0 mSdLazyCounter, 157 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 166 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 157 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 17:30:02,948 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [5 Valid, 115 Invalid, 166 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 157 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 17:30:02,948 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-04-27 17:30:02,951 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 83. [2022-04-27 17:30:02,951 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:30:02,951 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 17:30:02,951 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 17:30:02,952 INFO L87 Difference]: Start difference. First operand 91 states. Second operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 17:30:02,953 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:30:02,953 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-27 17:30:02,954 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 107 transitions. [2022-04-27 17:30:02,954 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:30:02,954 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:30:02,954 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 91 states. [2022-04-27 17:30:02,954 INFO L87 Difference]: Start difference. First operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 91 states. [2022-04-27 17:30:02,956 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:30:02,956 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-27 17:30:02,956 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 107 transitions. [2022-04-27 17:30:02,956 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:30:02,956 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:30:02,956 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:30:02,957 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:30:02,957 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 17:30:02,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 97 transitions. [2022-04-27 17:30:02,958 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 97 transitions. Word has length 39 [2022-04-27 17:30:02,958 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:30:02,958 INFO L495 AbstractCegarLoop]: Abstraction has 83 states and 97 transitions. [2022-04-27 17:30:02,959 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 17:30:02,959 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 97 transitions. [2022-04-27 17:30:02,959 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-27 17:30:02,959 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:30:02,959 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:30:02,979 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:30:03,160 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:30:03,160 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:30:03,161 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:30:03,161 INFO L85 PathProgramCache]: Analyzing trace with hash 1628716144, now seen corresponding path program 2 times [2022-04-27 17:30:03,161 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:30:03,161 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2063091448] [2022-04-27 17:30:03,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:30:03,161 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:30:03,170 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:30:03,170 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1463341093] [2022-04-27 17:30:03,170 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 17:30:03,170 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:30:03,170 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:30:03,175 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:30:03,176 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:30:03,214 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 17:30:03,215 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 17:30:03,215 INFO L263 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 17:30:03,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:30:03,230 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:30:04,012 INFO L272 TraceCheckUtils]: 0: Hoare triple {2776#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,013 INFO L290 TraceCheckUtils]: 1: Hoare triple {2776#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2776#true} is VALID [2022-04-27 17:30:04,013 INFO L290 TraceCheckUtils]: 2: Hoare triple {2776#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,013 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2776#true} {2776#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,013 INFO L272 TraceCheckUtils]: 4: Hoare triple {2776#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,014 INFO L290 TraceCheckUtils]: 5: Hoare triple {2776#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 17:30:04,014 INFO L290 TraceCheckUtils]: 6: Hoare triple {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 17:30:04,014 INFO L290 TraceCheckUtils]: 7: Hoare triple {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 17:30:04,014 INFO L272 TraceCheckUtils]: 8: Hoare triple {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2776#true} is VALID [2022-04-27 17:30:04,015 INFO L290 TraceCheckUtils]: 9: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-27 17:30:04,015 INFO L290 TraceCheckUtils]: 10: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,015 INFO L290 TraceCheckUtils]: 11: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,015 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2776#true} {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 17:30:04,016 INFO L290 TraceCheckUtils]: 13: Hoare triple {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 17:30:04,017 INFO L290 TraceCheckUtils]: 14: Hoare triple {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2824#(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:30:04,017 INFO L290 TraceCheckUtils]: 15: Hoare triple {2824#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2828#(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:30:04,018 INFO L290 TraceCheckUtils]: 16: Hoare triple {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2828#(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:30:04,018 INFO L290 TraceCheckUtils]: 17: Hoare triple {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2828#(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:30:04,019 INFO L272 TraceCheckUtils]: 18: Hoare triple {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2776#true} is VALID [2022-04-27 17:30:04,019 INFO L290 TraceCheckUtils]: 19: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-27 17:30:04,019 INFO L290 TraceCheckUtils]: 20: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,019 INFO L290 TraceCheckUtils]: 21: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,019 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2776#true} {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2828#(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:30:04,020 INFO L290 TraceCheckUtils]: 23: Hoare triple {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2828#(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:30:04,021 INFO L290 TraceCheckUtils]: 24: Hoare triple {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {2856#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:30:04,021 INFO L290 TraceCheckUtils]: 25: Hoare triple {2856#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:30:04,022 INFO L290 TraceCheckUtils]: 26: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:30:04,022 INFO L290 TraceCheckUtils]: 27: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:30:04,022 INFO L272 TraceCheckUtils]: 28: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2776#true} is VALID [2022-04-27 17:30:04,022 INFO L290 TraceCheckUtils]: 29: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-27 17:30:04,022 INFO L290 TraceCheckUtils]: 30: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,022 INFO L290 TraceCheckUtils]: 31: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,023 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2776#true} {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:30:04,023 INFO L290 TraceCheckUtils]: 33: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:30:04,024 INFO L290 TraceCheckUtils]: 34: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:30:04,024 INFO L290 TraceCheckUtils]: 35: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:30:04,024 INFO L290 TraceCheckUtils]: 36: Hoare triple {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:30:04,025 INFO L290 TraceCheckUtils]: 37: Hoare triple {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:30:04,025 INFO L272 TraceCheckUtils]: 38: Hoare triple {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2776#true} is VALID [2022-04-27 17:30:04,025 INFO L290 TraceCheckUtils]: 39: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-27 17:30:04,025 INFO L290 TraceCheckUtils]: 40: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,025 INFO L290 TraceCheckUtils]: 41: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,026 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2776#true} {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 17:30:04,028 INFO L290 TraceCheckUtils]: 43: Hoare triple {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-27 17:30:04,028 INFO L290 TraceCheckUtils]: 44: Hoare triple {2777#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2777#false} is VALID [2022-04-27 17:30:04,028 INFO L272 TraceCheckUtils]: 45: Hoare triple {2777#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} 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] {2777#false} is VALID [2022-04-27 17:30:04,028 INFO L290 TraceCheckUtils]: 46: Hoare triple {2777#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2777#false} is VALID [2022-04-27 17:30:04,028 INFO L290 TraceCheckUtils]: 47: Hoare triple {2777#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-27 17:30:04,028 INFO L290 TraceCheckUtils]: 48: Hoare triple {2777#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-27 17:30:04,029 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 8 proven. 30 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 17:30:04,029 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 17:30:04,351 INFO L290 TraceCheckUtils]: 48: Hoare triple {2777#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-27 17:30:04,351 INFO L290 TraceCheckUtils]: 47: Hoare triple {2777#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-27 17:30:04,351 INFO L290 TraceCheckUtils]: 46: Hoare triple {2777#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2777#false} is VALID [2022-04-27 17:30:04,351 INFO L272 TraceCheckUtils]: 45: Hoare triple {2777#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} 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] {2777#false} is VALID [2022-04-27 17:30:04,351 INFO L290 TraceCheckUtils]: 44: Hoare triple {2777#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2777#false} is VALID [2022-04-27 17:30:04,351 INFO L290 TraceCheckUtils]: 43: Hoare triple {2946#(<= main_~x~0 main_~X~0)} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-27 17:30:04,352 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2776#true} {2946#(<= main_~x~0 main_~X~0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2946#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:30:04,352 INFO L290 TraceCheckUtils]: 41: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,352 INFO L290 TraceCheckUtils]: 40: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,352 INFO L290 TraceCheckUtils]: 39: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-27 17:30:04,352 INFO L272 TraceCheckUtils]: 38: Hoare triple {2946#(<= main_~x~0 main_~X~0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2776#true} is VALID [2022-04-27 17:30:04,353 INFO L290 TraceCheckUtils]: 37: Hoare triple {2946#(<= main_~x~0 main_~X~0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2946#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:30:04,353 INFO L290 TraceCheckUtils]: 36: Hoare triple {2946#(<= main_~x~0 main_~X~0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2946#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:30:04,354 INFO L290 TraceCheckUtils]: 35: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2946#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 17:30:04,354 INFO L290 TraceCheckUtils]: 34: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:30:04,354 INFO L290 TraceCheckUtils]: 33: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:30:04,355 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2776#true} {2971#(<= (+ main_~x~0 1) main_~X~0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:30:04,355 INFO L290 TraceCheckUtils]: 31: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,355 INFO L290 TraceCheckUtils]: 30: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,355 INFO L290 TraceCheckUtils]: 29: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-27 17:30:04,355 INFO L272 TraceCheckUtils]: 28: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2776#true} is VALID [2022-04-27 17:30:04,355 INFO L290 TraceCheckUtils]: 27: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:30:04,356 INFO L290 TraceCheckUtils]: 26: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:30:04,356 INFO L290 TraceCheckUtils]: 25: Hoare triple {3002#(<= (+ main_~x~0 2) main_~X~0)} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 17:30:04,357 INFO L290 TraceCheckUtils]: 24: Hoare triple {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {3002#(<= (+ main_~x~0 2) main_~X~0)} is VALID [2022-04-27 17:30:04,357 INFO L290 TraceCheckUtils]: 23: Hoare triple {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 17:30:04,358 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2776#true} {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 17:30:04,358 INFO L290 TraceCheckUtils]: 21: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,358 INFO L290 TraceCheckUtils]: 20: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,358 INFO L290 TraceCheckUtils]: 19: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-27 17:30:04,358 INFO L272 TraceCheckUtils]: 18: Hoare triple {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2776#true} is VALID [2022-04-27 17:30:04,358 INFO L290 TraceCheckUtils]: 17: Hoare triple {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 17:30:04,359 INFO L290 TraceCheckUtils]: 16: Hoare triple {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 17:30:04,359 INFO L290 TraceCheckUtils]: 15: Hoare triple {3034#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} [90] L39-2-->L31-3: 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~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 17:30:04,360 INFO L290 TraceCheckUtils]: 14: Hoare triple {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {3034#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-27 17:30:04,360 INFO L290 TraceCheckUtils]: 13: Hoare triple {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {3038#(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:30:04,361 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2776#true} {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {3038#(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:30:04,361 INFO L290 TraceCheckUtils]: 11: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,361 INFO L290 TraceCheckUtils]: 10: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,361 INFO L290 TraceCheckUtils]: 9: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-27 17:30:04,361 INFO L272 TraceCheckUtils]: 8: Hoare triple {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* 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_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} 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] {2776#true} is VALID [2022-04-27 17:30:04,362 INFO L290 TraceCheckUtils]: 7: Hoare triple {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3038#(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:30:04,362 INFO L290 TraceCheckUtils]: 6: Hoare triple {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3038#(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:30:04,363 INFO L290 TraceCheckUtils]: 5: Hoare triple {2776#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {3038#(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:30:04,363 INFO L272 TraceCheckUtils]: 4: Hoare triple {2776#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,363 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2776#true} {2776#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,363 INFO L290 TraceCheckUtils]: 2: Hoare triple {2776#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,363 INFO L290 TraceCheckUtils]: 1: Hoare triple {2776#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (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{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2776#true} is VALID [2022-04-27 17:30:04,363 INFO L272 TraceCheckUtils]: 0: Hoare triple {2776#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-27 17:30:04,363 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 8 proven. 30 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 17:30:04,363 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 17:30:04,364 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2063091448] [2022-04-27 17:30:04,364 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 17:30:04,364 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1463341093] [2022-04-27 17:30:04,364 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1463341093] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 17:30:04,364 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 17:30:04,364 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-27 17:30:04,364 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [352504362] [2022-04-27 17:30:04,364 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 17:30:04,364 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Word has length 49 [2022-04-27 17:30:04,365 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 17:30:04,365 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 17:30:04,416 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 17:30:04,416 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 17:30:04,416 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 17:30:04,417 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 17:30:04,417 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-04-27 17:30:04,417 INFO L87 Difference]: Start difference. First operand 83 states and 97 transitions. Second operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 17:30:04,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:30:04,725 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-27 17:30:04,725 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 17:30:04,725 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Word has length 49 [2022-04-27 17:30:04,725 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 17:30:04,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 17:30:04,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 56 transitions. [2022-04-27 17:30:04,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 17:30:04,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 56 transitions. [2022-04-27 17:30:04,727 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 56 transitions. [2022-04-27 17:30:04,769 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:30:04,770 INFO L225 Difference]: With dead ends: 102 [2022-04-27 17:30:04,770 INFO L226 Difference]: Without dead ends: 102 [2022-04-27 17:30:04,771 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 85 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=64, Invalid=208, Unknown=0, NotChecked=0, Total=272 [2022-04-27 17:30:04,771 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 8 mSDsluCounter, 61 mSDsCounter, 0 mSdLazyCounter, 120 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 88 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 120 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 17:30:04,771 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 88 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 120 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 17:30:04,772 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-04-27 17:30:04,777 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 89. [2022-04-27 17:30:04,777 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 17:30:04,777 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 17:30:04,777 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 17:30:04,778 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 17:30:04,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:30:04,780 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-27 17:30:04,780 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 121 transitions. [2022-04-27 17:30:04,780 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:30:04,780 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:30:04,780 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 102 states. [2022-04-27 17:30:04,781 INFO L87 Difference]: Start difference. First operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 102 states. [2022-04-27 17:30:04,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 17:30:04,783 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-27 17:30:04,783 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 121 transitions. [2022-04-27 17:30:04,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 17:30:04,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 17:30:04,783 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 17:30:04,783 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 17:30:04,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 17:30:04,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 105 transitions. [2022-04-27 17:30:04,785 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 105 transitions. Word has length 49 [2022-04-27 17:30:04,785 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 17:30:04,785 INFO L495 AbstractCegarLoop]: Abstraction has 89 states and 105 transitions. [2022-04-27 17:30:04,785 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 17:30:04,785 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 105 transitions. [2022-04-27 17:30:04,786 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-27 17:30:04,786 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 17:30:04,786 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 17:30:04,802 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:30:04,995 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:30:04,996 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 17:30:04,996 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 17:30:04,996 INFO L85 PathProgramCache]: Analyzing trace with hash 1136439088, now seen corresponding path program 3 times [2022-04-27 17:30:04,996 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 17:30:04,996 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [344409728] [2022-04-27 17:30:04,996 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 17:30:04,996 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 17:30:05,012 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 17:30:05,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1920310099] [2022-04-27 17:30:05,012 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 17:30:05,012 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 17:30:05,012 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 17:30:05,013 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 17:30:05,049 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-27 17:30:05,577 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-27 17:30:05,577 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 17:30:05,579 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 17:30:05,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 17:30:05,605 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 17:30:18,520 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:30:26,372 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:30:27,453 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 17:30:55,462 WARN L232 SmtUtils]: Spent 19.86s on a formula simplification that was a NOOP. DAG size: 48 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 17:38:19,717 WARN L833 $PredicateComparison]: unable to prove that (or (and (<= 0 |c___VERIFIER_assert_#in~cond|) (exists ((v_main_~v~0_BEFORE_CALL_22 Int) (aux_div_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115 Int) (aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 Int) (aux_div_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 Int) (aux_div_v_main_~X~0_BEFORE_CALL_31_65 Int) (v_main_~y~0_BEFORE_CALL_15 Int) (v_main_~Y~0_BEFORE_CALL_21 Int) (aux_div_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93 Int)) (let ((.cse8 (* 2 aux_div_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139))) (let ((.cse0 (* 2 aux_div_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115)) (.cse3 (+ .cse8 (* (- 1) v_main_~v~0_BEFORE_CALL_22) aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139)) (.cse4 (* (- 1) v_main_~Y~0_BEFORE_CALL_21)) (.cse5 (* 2 v_main_~y~0_BEFORE_CALL_15 aux_div_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139)) (.cse6 (* v_main_~y~0_BEFORE_CALL_15 aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139)) (.cse7 (* (- 1) v_main_~v~0_BEFORE_CALL_22 v_main_~y~0_BEFORE_CALL_15)) (.cse2 (* 2 aux_div_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93)) (.cse1 (+ .cse8 aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139)) (.cse10 (* 2 aux_div_v_main_~X~0_BEFORE_CALL_31_65))) (and (<= .cse0 .cse1) (<= .cse2 .cse1) (< aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 2) (= (mod (+ aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 (* .cse3 2 v_main_~y~0_BEFORE_CALL_15)) 2) 0) (< .cse1 (+ 2 .cse0)) (< .cse1 (+ v_main_~v~0_BEFORE_CALL_22 (div (+ .cse4 .cse5 .cse6 .cse7 aux_div_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93) v_main_~Y~0_BEFORE_CALL_21))) (not (let ((.cse9 (div (+ .cse4 (* 2 aux_div_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115 v_main_~y~0_BEFORE_CALL_15) (* v_main_~y~0_BEFORE_CALL_15 (+ .cse8 (* (- 2) aux_div_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115) aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139)) aux_div_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 .cse7) v_main_~Y~0_BEFORE_CALL_21))) (= (+ .cse8 (* (* .cse9 v_main_~y~0_BEFORE_CALL_15) 2) aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139) (+ (* 2 v_main_~y~0_BEFORE_CALL_15) (* 2 v_main_~Y~0_BEFORE_CALL_21) (* 2 (* .cse9 v_main_~Y~0_BEFORE_CALL_21)))))) (not (= v_main_~Y~0_BEFORE_CALL_21 0)) (<= .cse10 .cse1) (<= 0 aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139) (= (mod (+ .cse4 (* .cse3 v_main_~y~0_BEFORE_CALL_15) aux_div_v_main_~X~0_BEFORE_CALL_31_65) v_main_~Y~0_BEFORE_CALL_21) 0) (<= (+ v_main_~v~0_BEFORE_CALL_22 (div (+ .cse4 .cse5 .cse6 aux_div_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115 .cse7) v_main_~Y~0_BEFORE_CALL_21)) (+ .cse8 aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 1)) (< .cse1 (+ 2 .cse2)) (< .cse1 (+ 2 .cse10))))))) (<= 1 |c___VERIFIER_assert_#in~cond|)) is different from false