/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 20:30:06,976 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 20:30:06,977 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 20:30:07,016 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 20:30:07,016 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 20:30:07,018 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 20:30:07,019 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 20:30:07,020 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 20:30:07,021 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 20:30:07,022 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 20:30:07,022 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 20:30:07,023 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 20:30:07,023 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 20:30:07,024 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 20:30:07,025 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 20:30:07,026 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 20:30:07,027 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 20:30:07,027 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 20:30:07,029 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 20:30:07,030 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 20:30:07,032 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 20:30:07,032 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 20:30:07,033 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 20:30:07,034 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 20:30:07,035 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 20:30:07,038 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 20:30:07,038 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 20:30:07,038 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 20:30:07,039 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 20:30:07,039 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 20:30:07,040 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 20:30:07,040 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 20:30:07,041 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 20:30:07,041 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 20:30:07,042 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 20:30:07,043 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 20:30:07,043 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 20:30:07,044 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 20:30:07,044 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 20:30:07,044 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 20:30:07,045 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 20:30:07,046 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 20:30:07,047 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-14 20:30:07,055 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 20:30:07,055 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 20:30:07,056 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 20:30:07,057 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 20:30:07,057 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 20:30:07,057 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 20:30:07,057 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 20:30:07,057 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 20:30:07,057 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 20:30:07,057 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 20:30:07,058 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 20:30:07,058 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 20:30:07,058 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 20:30:07,058 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 20:30:07,058 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 20:30:07,058 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 20:30:07,058 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-14 20:30:07,058 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 20:30:07,059 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 20:30:07,059 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 20:30:07,059 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 20:30:07,060 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-14 20:30:07,061 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-14 20:30:07,238 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 20:30:07,254 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 20:30:07,256 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 20:30:07,257 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 20:30:07,257 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 20:30:07,258 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c [2022-04-14 20:30:07,328 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3bbd6ff8e/d3d227b81a1a40299aa7005cd0806426/FLAG4f452ec26 [2022-04-14 20:30:07,654 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 20:30:07,655 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c [2022-04-14 20:30:07,659 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3bbd6ff8e/d3d227b81a1a40299aa7005cd0806426/FLAG4f452ec26 [2022-04-14 20:30:08,072 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3bbd6ff8e/d3d227b81a1a40299aa7005cd0806426 [2022-04-14 20:30:08,074 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 20:30:08,076 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-14 20:30:08,079 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 20:30:08,079 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 20:30:08,081 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 20:30:08,082 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 08:30:08" (1/1) ... [2022-04-14 20:30:08,083 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1d017f94 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:30:08, skipping insertion in model container [2022-04-14 20:30:08,083 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 08:30:08" (1/1) ... [2022-04-14 20:30:08,089 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 20:30:08,102 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 20:30:08,310 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c[597,610] [2022-04-14 20:30:08,333 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 20:30:08,341 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 20:30:08,352 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c[597,610] [2022-04-14 20:30:08,359 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 20:30:08,371 INFO L208 MainTranslator]: Completed translation [2022-04-14 20:30:08,371 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:30:08 WrapperNode [2022-04-14 20:30:08,371 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 20:30:08,372 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 20:30:08,372 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 20:30:08,372 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 20:30:08,383 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:30:08" (1/1) ... [2022-04-14 20:30:08,383 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:30:08" (1/1) ... [2022-04-14 20:30:08,391 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:30:08" (1/1) ... [2022-04-14 20:30:08,391 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:30:08" (1/1) ... [2022-04-14 20:30:08,396 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:30:08" (1/1) ... [2022-04-14 20:30:08,400 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:30:08" (1/1) ... [2022-04-14 20:30:08,401 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:30:08" (1/1) ... [2022-04-14 20:30:08,403 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 20:30:08,403 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 20:30:08,404 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 20:30:08,404 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 20:30:08,404 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:30:08" (1/1) ... [2022-04-14 20:30:08,419 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 20:30:08,426 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:30:08,437 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-14 20:30:08,459 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-14 20:30:08,473 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 20:30:08,473 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 20:30:08,474 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 20:30:08,474 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 20:30:08,474 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 20:30:08,474 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 20:30:08,474 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 20:30:08,474 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 20:30:08,474 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 20:30:08,475 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 20:30:08,475 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 20:30:08,475 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 20:30:08,475 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 20:30:08,475 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 20:30:08,475 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 20:30:08,476 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 20:30:08,476 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 20:30:08,476 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 20:30:08,476 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 20:30:08,476 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 20:30:08,524 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 20:30:08,525 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 20:30:08,681 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 20:30:08,687 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 20:30:08,687 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-14 20:30:08,689 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:30:08 BoogieIcfgContainer [2022-04-14 20:30:08,689 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 20:30:08,690 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-14 20:30:08,690 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-14 20:30:08,691 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-14 20:30:08,693 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:30:08" (1/1) ... [2022-04-14 20:30:08,695 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-14 20:30:08,723 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 08:30:08 BasicIcfg [2022-04-14 20:30:08,723 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-14 20:30:08,725 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 20:30:08,725 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 20:30:08,727 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 20:30:08,728 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 08:30:08" (1/4) ... [2022-04-14 20:30:08,728 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7084e10c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 08:30:08, skipping insertion in model container [2022-04-14 20:30:08,728 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:30:08" (2/4) ... [2022-04-14 20:30:08,729 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7084e10c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 08:30:08, skipping insertion in model container [2022-04-14 20:30:08,729 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:30:08" (3/4) ... [2022-04-14 20:30:08,729 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7084e10c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 08:30:08, skipping insertion in model container [2022-04-14 20:30:08,729 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 08:30:08" (4/4) ... [2022-04-14 20:30:08,730 INFO L111 eAbstractionObserver]: Analyzing ICFG bresenham-ll_valuebound20.cJordan [2022-04-14 20:30:08,734 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-14 20:30:08,734 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 20:30:08,785 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 20:30:08,791 INFO L340 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 [2022-04-14 20:30:08,791 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 20:30:08,807 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 20:30:08,812 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-14 20:30:08,813 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:30:08,813 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:30:08,814 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:30:08,817 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:30:08,818 INFO L85 PathProgramCache]: Analyzing trace with hash -1563578423, now seen corresponding path program 1 times [2022-04-14 20:30:08,825 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:30:08,825 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [685455120] [2022-04-14 20:30:08,825 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:30:08,827 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:30:08,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:08,958 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 20:30:08,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:08,974 INFO L290 TraceCheckUtils]: 0: Hoare triple {48#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35#true} is VALID [2022-04-14 20:30:08,975 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-14 20:30:08,975 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-14 20:30:08,976 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 20:30:08,978 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:08,983 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-14 20:30:08,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 20:30:08,985 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 20:30:08,985 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-14 20:30:08,985 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-14 20:30:08,987 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:08,993 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-14 20:30:08,993 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 20:30:08,994 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 20:30:08,994 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-14 20:30:08,995 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 20:30:08,996 INFO L290 TraceCheckUtils]: 1: Hoare triple {48#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35#true} is VALID [2022-04-14 20:30:08,996 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-14 20:30:08,996 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-14 20:30:08,996 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-14 20:30:08,997 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {35#true} is VALID [2022-04-14 20:30:08,997 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-14 20:30:08,997 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-14 20:30:08,998 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 20:30:08,998 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 20:30:08,998 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-14 20:30:08,999 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {36#false} is VALID [2022-04-14 20:30:08,999 INFO L272 TraceCheckUtils]: 12: Hoare triple {36#false} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-14 20:30:08,999 INFO L290 TraceCheckUtils]: 13: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-14 20:30:09,000 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 20:30:09,000 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 20:30:09,000 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {36#false} {36#false} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-14 20:30:09,001 INFO L290 TraceCheckUtils]: 17: Hoare triple {36#false} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {36#false} is VALID [2022-04-14 20:30:09,001 INFO L290 TraceCheckUtils]: 18: Hoare triple {36#false} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {36#false} is VALID [2022-04-14 20:30:09,001 INFO L272 TraceCheckUtils]: 19: Hoare triple {36#false} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {36#false} is VALID [2022-04-14 20:30:09,001 INFO L290 TraceCheckUtils]: 20: Hoare triple {36#false} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {36#false} is VALID [2022-04-14 20:30:09,002 INFO L290 TraceCheckUtils]: 21: Hoare triple {36#false} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 20:30:09,002 INFO L290 TraceCheckUtils]: 22: Hoare triple {36#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 20:30:09,003 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 20:30:09,003 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:30:09,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [685455120] [2022-04-14 20:30:09,004 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [685455120] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:30:09,004 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:30:09,004 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 20:30:09,006 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [98438048] [2022-04-14 20:30:09,006 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:30:09,011 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-14 20:30:09,012 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:30:09,015 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 20:30:09,037 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:30:09,037 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 20:30:09,038 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:30:09,054 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 20:30:09,055 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 20:30:09,057 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 20:30:09,136 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:09,136 INFO L93 Difference]: Finished difference Result 32 states and 35 transitions. [2022-04-14 20:30:09,136 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 20:30:09,137 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-14 20:30:09,137 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:30:09,138 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 20:30:09,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 39 transitions. [2022-04-14 20:30:09,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 20:30:09,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 39 transitions. [2022-04-14 20:30:09,147 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 39 transitions. [2022-04-14 20:30:09,190 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-14 20:30:09,197 INFO L225 Difference]: With dead ends: 32 [2022-04-14 20:30:09,197 INFO L226 Difference]: Without dead ends: 27 [2022-04-14 20:30:09,199 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 20:30:09,201 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 20 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 6 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 34 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 6 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 20:30:09,202 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 34 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 6 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 20:30:09,215 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-14 20:30:09,224 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-14 20:30:09,225 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:30:09,225 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 20:30:09,226 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 20:30:09,226 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 20:30:09,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:09,230 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-14 20:30:09,230 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-14 20:30:09,231 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:30:09,231 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:30:09,231 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-14 20:30:09,232 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-14 20:30:09,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:09,235 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-14 20:30:09,235 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-14 20:30:09,236 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:30:09,236 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:30:09,236 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:30:09,236 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:30:09,236 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 20:30:09,238 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-04-14 20:30:09,239 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 23 [2022-04-14 20:30:09,240 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:30:09,240 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-04-14 20:30:09,240 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 20:30:09,240 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-14 20:30:09,241 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-14 20:30:09,241 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:30:09,241 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:30:09,241 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 20:30:09,242 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:30:09,242 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:30:09,242 INFO L85 PathProgramCache]: Analyzing trace with hash -1863481077, now seen corresponding path program 1 times [2022-04-14 20:30:09,243 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:30:09,243 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [239467654] [2022-04-14 20:30:09,243 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:30:09,243 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:30:09,264 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:30:09,264 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [639476830] [2022-04-14 20:30:09,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:30:09,265 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:30:09,265 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:30:09,267 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-14 20:30:09,322 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-14 20:30:09,351 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:09,353 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-14 20:30:09,370 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:09,376 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:30:09,594 INFO L272 TraceCheckUtils]: 0: Hoare triple {164#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-14 20:30:09,595 INFO L290 TraceCheckUtils]: 1: Hoare triple {164#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {164#true} is VALID [2022-04-14 20:30:09,595 INFO L290 TraceCheckUtils]: 2: Hoare triple {164#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-14 20:30:09,595 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {164#true} {164#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-14 20:30:09,596 INFO L272 TraceCheckUtils]: 4: Hoare triple {164#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-14 20:30:09,596 INFO L290 TraceCheckUtils]: 5: Hoare triple {164#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {164#true} is VALID [2022-04-14 20:30:09,597 INFO L272 TraceCheckUtils]: 6: Hoare triple {164#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {164#true} is VALID [2022-04-14 20:30:09,598 INFO L290 TraceCheckUtils]: 7: Hoare triple {164#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {164#true} is VALID [2022-04-14 20:30:09,598 INFO L290 TraceCheckUtils]: 8: Hoare triple {164#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-14 20:30:09,598 INFO L290 TraceCheckUtils]: 9: Hoare triple {164#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-14 20:30:09,598 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {164#true} {164#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {164#true} is VALID [2022-04-14 20:30:09,598 INFO L290 TraceCheckUtils]: 11: Hoare triple {164#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {164#true} is VALID [2022-04-14 20:30:09,599 INFO L272 TraceCheckUtils]: 12: Hoare triple {164#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {164#true} is VALID [2022-04-14 20:30:09,599 INFO L290 TraceCheckUtils]: 13: Hoare triple {164#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {164#true} is VALID [2022-04-14 20:30:09,600 INFO L290 TraceCheckUtils]: 14: Hoare triple {164#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-14 20:30:09,600 INFO L290 TraceCheckUtils]: 15: Hoare triple {164#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-14 20:30:09,603 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {164#true} {164#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {164#true} is VALID [2022-04-14 20:30:09,604 INFO L290 TraceCheckUtils]: 17: Hoare triple {164#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {220#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-14 20:30:09,605 INFO L290 TraceCheckUtils]: 18: Hoare triple {220#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {224#(and (= main_~xy~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~yx~0 0))} is VALID [2022-04-14 20:30:09,606 INFO L272 TraceCheckUtils]: 19: Hoare triple {224#(and (= main_~xy~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~yx~0 0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {228#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:30:09,606 INFO L290 TraceCheckUtils]: 20: Hoare triple {228#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {232#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:30:09,608 INFO L290 TraceCheckUtils]: 21: Hoare triple {232#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {165#false} is VALID [2022-04-14 20:30:09,609 INFO L290 TraceCheckUtils]: 22: Hoare triple {165#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165#false} is VALID [2022-04-14 20:30:09,609 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 20:30:09,609 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 20:30:09,610 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:30:09,610 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [239467654] [2022-04-14 20:30:09,610 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:30:09,611 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [639476830] [2022-04-14 20:30:09,614 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [639476830] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:30:09,614 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:30:09,614 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-14 20:30:09,615 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1150885086] [2022-04-14 20:30:09,615 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:30:09,616 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-14 20:30:09,617 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:30:09,617 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 20:30:09,637 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:30:09,637 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-14 20:30:09,638 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:30:09,638 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-14 20:30:09,639 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-14 20:30:09,639 INFO L87 Difference]: Start difference. First operand 27 states and 30 transitions. Second operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 20:30:09,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:09,866 INFO L93 Difference]: Finished difference Result 37 states and 42 transitions. [2022-04-14 20:30:09,866 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-14 20:30:09,866 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-14 20:30:09,866 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:30:09,867 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 20:30:09,874 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-14 20:30:09,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 20:30:09,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-14 20:30:09,879 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 43 transitions. [2022-04-14 20:30:09,917 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:30:09,920 INFO L225 Difference]: With dead ends: 37 [2022-04-14 20:30:09,922 INFO L226 Difference]: Without dead ends: 35 [2022-04-14 20:30:09,922 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-14 20:30:09,924 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 10 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 61 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 66 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 61 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 20:30:09,925 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 91 Invalid, 66 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 61 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 20:30:09,927 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-14 20:30:09,931 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 34. [2022-04-14 20:30:09,932 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:30:09,932 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 20:30:09,932 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 20:30:09,935 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 20:30:09,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:09,941 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-14 20:30:09,941 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-14 20:30:09,942 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:30:09,943 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:30:09,943 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 35 states. [2022-04-14 20:30:09,943 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 35 states. [2022-04-14 20:30:09,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:09,950 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-14 20:30:09,950 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-14 20:30:09,951 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:30:09,951 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:30:09,951 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:30:09,952 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:30:09,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 20:30:09,957 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 37 transitions. [2022-04-14 20:30:09,957 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 37 transitions. Word has length 23 [2022-04-14 20:30:09,957 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:30:09,958 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 37 transitions. [2022-04-14 20:30:09,958 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 20:30:09,961 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 37 transitions. [2022-04-14 20:30:09,962 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-14 20:30:09,965 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:30:09,965 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:30:09,987 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-14 20:30:10,171 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:30:10,172 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:30:10,172 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:30:10,173 INFO L85 PathProgramCache]: Analyzing trace with hash -646008129, now seen corresponding path program 1 times [2022-04-14 20:30:10,173 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:30:10,173 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [73136834] [2022-04-14 20:30:10,173 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:30:10,173 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:30:10,193 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:30:10,193 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1873673318] [2022-04-14 20:30:10,194 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:30:10,194 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:30:10,194 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:30:10,203 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-14 20:30:10,215 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-14 20:30:10,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:10,263 INFO L263 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-14 20:30:10,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:10,274 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:30:10,485 INFO L272 TraceCheckUtils]: 0: Hoare triple {383#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,485 INFO L290 TraceCheckUtils]: 1: Hoare triple {383#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {383#true} is VALID [2022-04-14 20:30:10,486 INFO L290 TraceCheckUtils]: 2: Hoare triple {383#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,486 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {383#true} {383#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,486 INFO L272 TraceCheckUtils]: 4: Hoare triple {383#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,486 INFO L290 TraceCheckUtils]: 5: Hoare triple {383#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {383#true} is VALID [2022-04-14 20:30:10,487 INFO L272 TraceCheckUtils]: 6: Hoare triple {383#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {383#true} is VALID [2022-04-14 20:30:10,487 INFO L290 TraceCheckUtils]: 7: Hoare triple {383#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {383#true} is VALID [2022-04-14 20:30:10,487 INFO L290 TraceCheckUtils]: 8: Hoare triple {383#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,487 INFO L290 TraceCheckUtils]: 9: Hoare triple {383#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,487 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {383#true} {383#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {383#true} is VALID [2022-04-14 20:30:10,487 INFO L290 TraceCheckUtils]: 11: Hoare triple {383#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {383#true} is VALID [2022-04-14 20:30:10,488 INFO L272 TraceCheckUtils]: 12: Hoare triple {383#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {383#true} is VALID [2022-04-14 20:30:10,488 INFO L290 TraceCheckUtils]: 13: Hoare triple {383#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {383#true} is VALID [2022-04-14 20:30:10,488 INFO L290 TraceCheckUtils]: 14: Hoare triple {383#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,488 INFO L290 TraceCheckUtils]: 15: Hoare triple {383#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,489 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {383#true} {383#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {383#true} is VALID [2022-04-14 20:30:10,489 INFO L290 TraceCheckUtils]: 17: Hoare triple {383#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {439#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-14 20:30:10,490 INFO L290 TraceCheckUtils]: 18: Hoare triple {439#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {439#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-14 20:30:10,490 INFO L272 TraceCheckUtils]: 19: Hoare triple {439#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {383#true} is VALID [2022-04-14 20:30:10,490 INFO L290 TraceCheckUtils]: 20: Hoare triple {383#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {383#true} is VALID [2022-04-14 20:30:10,490 INFO L290 TraceCheckUtils]: 21: Hoare triple {383#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,491 INFO L290 TraceCheckUtils]: 22: Hoare triple {383#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,492 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {383#true} {439#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {439#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-14 20:30:10,492 INFO L290 TraceCheckUtils]: 24: Hoare triple {439#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {439#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-14 20:30:10,494 INFO L290 TraceCheckUtils]: 25: Hoare triple {439#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {464#(and (= main_~x~0 0) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-14 20:30:10,495 INFO L290 TraceCheckUtils]: 26: Hoare triple {464#(and (= main_~x~0 0) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {468#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-14 20:30:10,496 INFO L290 TraceCheckUtils]: 27: Hoare triple {468#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {472#(and (= main_~xy~0 0) (= main_~Y~0 main_~yx~0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-14 20:30:10,497 INFO L272 TraceCheckUtils]: 28: Hoare triple {472#(and (= main_~xy~0 0) (= main_~Y~0 main_~yx~0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {476#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:30:10,497 INFO L290 TraceCheckUtils]: 29: Hoare triple {476#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {480#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:30:10,498 INFO L290 TraceCheckUtils]: 30: Hoare triple {480#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {384#false} is VALID [2022-04-14 20:30:10,498 INFO L290 TraceCheckUtils]: 31: Hoare triple {384#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {384#false} is VALID [2022-04-14 20:30:10,498 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 20:30:10,498 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:30:10,707 INFO L290 TraceCheckUtils]: 31: Hoare triple {384#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {384#false} is VALID [2022-04-14 20:30:10,708 INFO L290 TraceCheckUtils]: 30: Hoare triple {480#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {384#false} is VALID [2022-04-14 20:30:10,708 INFO L290 TraceCheckUtils]: 29: Hoare triple {476#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {480#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:30:10,709 INFO L272 TraceCheckUtils]: 28: Hoare triple {496#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {476#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:30:10,710 INFO L290 TraceCheckUtils]: 27: Hoare triple {500#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {496#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} is VALID [2022-04-14 20:30:10,711 INFO L290 TraceCheckUtils]: 26: Hoare triple {504#(= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {500#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-14 20:30:10,712 INFO L290 TraceCheckUtils]: 25: Hoare triple {500#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {504#(= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))} is VALID [2022-04-14 20:30:10,712 INFO L290 TraceCheckUtils]: 24: Hoare triple {500#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {500#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-14 20:30:10,713 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {383#true} {500#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {500#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-14 20:30:10,714 INFO L290 TraceCheckUtils]: 22: Hoare triple {383#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,714 INFO L290 TraceCheckUtils]: 21: Hoare triple {383#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,714 INFO L290 TraceCheckUtils]: 20: Hoare triple {383#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {383#true} is VALID [2022-04-14 20:30:10,716 INFO L272 TraceCheckUtils]: 19: Hoare triple {500#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {383#true} is VALID [2022-04-14 20:30:10,717 INFO L290 TraceCheckUtils]: 18: Hoare triple {500#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {500#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-14 20:30:10,717 INFO L290 TraceCheckUtils]: 17: Hoare triple {383#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {500#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-14 20:30:10,717 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {383#true} {383#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {383#true} is VALID [2022-04-14 20:30:10,718 INFO L290 TraceCheckUtils]: 15: Hoare triple {383#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,718 INFO L290 TraceCheckUtils]: 14: Hoare triple {383#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,719 INFO L290 TraceCheckUtils]: 13: Hoare triple {383#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {383#true} is VALID [2022-04-14 20:30:10,719 INFO L272 TraceCheckUtils]: 12: Hoare triple {383#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {383#true} is VALID [2022-04-14 20:30:10,719 INFO L290 TraceCheckUtils]: 11: Hoare triple {383#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {383#true} is VALID [2022-04-14 20:30:10,720 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {383#true} {383#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {383#true} is VALID [2022-04-14 20:30:10,720 INFO L290 TraceCheckUtils]: 9: Hoare triple {383#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,720 INFO L290 TraceCheckUtils]: 8: Hoare triple {383#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,720 INFO L290 TraceCheckUtils]: 7: Hoare triple {383#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {383#true} is VALID [2022-04-14 20:30:10,721 INFO L272 TraceCheckUtils]: 6: Hoare triple {383#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {383#true} is VALID [2022-04-14 20:30:10,721 INFO L290 TraceCheckUtils]: 5: Hoare triple {383#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {383#true} is VALID [2022-04-14 20:30:10,722 INFO L272 TraceCheckUtils]: 4: Hoare triple {383#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,723 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {383#true} {383#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,723 INFO L290 TraceCheckUtils]: 2: Hoare triple {383#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,731 INFO L290 TraceCheckUtils]: 1: Hoare triple {383#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {383#true} is VALID [2022-04-14 20:30:10,731 INFO L272 TraceCheckUtils]: 0: Hoare triple {383#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-14 20:30:10,732 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-14 20:30:10,732 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:30:10,732 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [73136834] [2022-04-14 20:30:10,732 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:30:10,732 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1873673318] [2022-04-14 20:30:10,732 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1873673318] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:30:10,732 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 20:30:10,733 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-14 20:30:10,733 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1806651771] [2022-04-14 20:30:10,733 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 20:30:10,733 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 32 [2022-04-14 20:30:10,734 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:30:10,734 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:30:10,771 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:30:10,771 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-14 20:30:10,771 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:30:10,772 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-14 20:30:10,772 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-14 20:30:10,773 INFO L87 Difference]: Start difference. First operand 34 states and 37 transitions. Second operand has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:30:11,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:11,291 INFO L93 Difference]: Finished difference Result 46 states and 52 transitions. [2022-04-14 20:30:11,291 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-14 20:30:11,291 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 32 [2022-04-14 20:30:11,291 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:30:11,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:30:11,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 50 transitions. [2022-04-14 20:30:11,294 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:30:11,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 50 transitions. [2022-04-14 20:30:11,295 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 50 transitions. [2022-04-14 20:30:11,348 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:30:11,350 INFO L225 Difference]: With dead ends: 46 [2022-04-14 20:30:11,350 INFO L226 Difference]: Without dead ends: 42 [2022-04-14 20:30:11,350 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 52 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=44, Invalid=166, Unknown=0, NotChecked=0, Total=210 [2022-04-14 20:30:11,351 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 14 mSDsluCounter, 88 mSDsCounter, 0 mSdLazyCounter, 157 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 167 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 157 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-14 20:30:11,351 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 110 Invalid, 167 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 157 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-14 20:30:11,352 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-04-14 20:30:11,355 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2022-04-14 20:30:11,355 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:30:11,355 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 20:30:11,355 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 20:30:11,356 INFO L87 Difference]: Start difference. First operand 42 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 20:30:11,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:11,358 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-14 20:30:11,358 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-14 20:30:11,358 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:30:11,358 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:30:11,359 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 42 states. [2022-04-14 20:30:11,359 INFO L87 Difference]: Start difference. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 42 states. [2022-04-14 20:30:11,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:11,361 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-14 20:30:11,361 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-14 20:30:11,361 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:30:11,362 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:30:11,362 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:30:11,362 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:30:11,362 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 20:30:11,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-14 20:30:11,364 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 32 [2022-04-14 20:30:11,364 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:30:11,364 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-14 20:30:11,364 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:30:11,364 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-14 20:30:11,365 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-14 20:30:11,365 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:30:11,365 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:30:11,386 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-14 20:30:11,580 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-14 20:30:11,580 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:30:11,581 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:30:11,581 INFO L85 PathProgramCache]: Analyzing trace with hash -1661983408, now seen corresponding path program 1 times [2022-04-14 20:30:11,581 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:30:11,581 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2039551676] [2022-04-14 20:30:11,581 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:30:11,581 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:30:11,596 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:30:11,596 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1357711544] [2022-04-14 20:30:11,601 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:30:11,602 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:30:11,602 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:30:11,605 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-14 20:30:11,619 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-14 20:30:11,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:11,663 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-14 20:30:11,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:11,675 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:30:12,153 INFO L272 TraceCheckUtils]: 0: Hoare triple {764#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,154 INFO L290 TraceCheckUtils]: 1: Hoare triple {764#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {764#true} is VALID [2022-04-14 20:30:12,154 INFO L290 TraceCheckUtils]: 2: Hoare triple {764#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,154 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {764#true} {764#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,154 INFO L272 TraceCheckUtils]: 4: Hoare triple {764#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,155 INFO L290 TraceCheckUtils]: 5: Hoare triple {764#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {764#true} is VALID [2022-04-14 20:30:12,155 INFO L272 TraceCheckUtils]: 6: Hoare triple {764#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {764#true} is VALID [2022-04-14 20:30:12,155 INFO L290 TraceCheckUtils]: 7: Hoare triple {764#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {764#true} is VALID [2022-04-14 20:30:12,155 INFO L290 TraceCheckUtils]: 8: Hoare triple {764#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,155 INFO L290 TraceCheckUtils]: 9: Hoare triple {764#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,155 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {764#true} {764#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {764#true} is VALID [2022-04-14 20:30:12,155 INFO L290 TraceCheckUtils]: 11: Hoare triple {764#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {764#true} is VALID [2022-04-14 20:30:12,156 INFO L272 TraceCheckUtils]: 12: Hoare triple {764#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {764#true} is VALID [2022-04-14 20:30:12,156 INFO L290 TraceCheckUtils]: 13: Hoare triple {764#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {764#true} is VALID [2022-04-14 20:30:12,156 INFO L290 TraceCheckUtils]: 14: Hoare triple {764#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,156 INFO L290 TraceCheckUtils]: 15: Hoare triple {764#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,156 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {764#true} {764#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {764#true} is VALID [2022-04-14 20:30:12,157 INFO L290 TraceCheckUtils]: 17: Hoare triple {764#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {820#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-14 20:30:12,157 INFO L290 TraceCheckUtils]: 18: Hoare triple {820#(and (= main_~x~0 0) (= main_~y~0 0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {820#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-14 20:30:12,157 INFO L272 TraceCheckUtils]: 19: Hoare triple {820#(and (= main_~x~0 0) (= main_~y~0 0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {764#true} is VALID [2022-04-14 20:30:12,158 INFO L290 TraceCheckUtils]: 20: Hoare triple {764#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {764#true} is VALID [2022-04-14 20:30:12,158 INFO L290 TraceCheckUtils]: 21: Hoare triple {764#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,158 INFO L290 TraceCheckUtils]: 22: Hoare triple {764#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,159 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {764#true} {820#(and (= main_~x~0 0) (= main_~y~0 0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {820#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-14 20:30:12,159 INFO L290 TraceCheckUtils]: 24: Hoare triple {820#(and (= main_~x~0 0) (= main_~y~0 0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {842#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-14 20:30:12,160 INFO L290 TraceCheckUtils]: 25: Hoare triple {842#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {846#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 1))} is VALID [2022-04-14 20:30:12,160 INFO L290 TraceCheckUtils]: 26: Hoare triple {846#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 1))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {850#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-14 20:30:12,161 INFO L290 TraceCheckUtils]: 27: Hoare triple {850#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (<= main_~x~0 (+ main_~X~0 1)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {854#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-14 20:30:12,161 INFO L272 TraceCheckUtils]: 28: Hoare triple {854#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {764#true} is VALID [2022-04-14 20:30:12,161 INFO L290 TraceCheckUtils]: 29: Hoare triple {764#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {861#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:30:12,163 INFO L290 TraceCheckUtils]: 30: Hoare triple {861#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {865#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:30:12,163 INFO L290 TraceCheckUtils]: 31: Hoare triple {865#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {865#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:30:12,164 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {865#(not (= |__VERIFIER_assert_#in~cond| 0))} {854#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {872#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-14 20:30:12,165 INFO L290 TraceCheckUtils]: 33: Hoare triple {872#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (<= main_~x~0 (+ main_~X~0 1)))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {876#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (not (<= main_~x~0 main_~X~0)) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-14 20:30:12,167 INFO L290 TraceCheckUtils]: 34: Hoare triple {876#(and (= (+ (- 1) main_~x~0) 0) (= main_~y~0 1) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (not (<= main_~x~0 main_~X~0)) (<= main_~x~0 (+ main_~X~0 1)))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {880#(and (not (<= 1 main_~X~0)) (= main_~y~0 main_~xy~0) (= main_~y~0 1) (<= 0 main_~X~0) (= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (* main_~Y~0 4)) (= main_~Y~0 main_~yx~0))} is VALID [2022-04-14 20:30:12,168 INFO L272 TraceCheckUtils]: 35: Hoare triple {880#(and (not (<= 1 main_~X~0)) (= main_~y~0 main_~xy~0) (= main_~y~0 1) (<= 0 main_~X~0) (= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (* main_~Y~0 4)) (= main_~Y~0 main_~yx~0))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {884#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:30:12,168 INFO L290 TraceCheckUtils]: 36: Hoare triple {884#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {888#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:30:12,169 INFO L290 TraceCheckUtils]: 37: Hoare triple {888#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {765#false} is VALID [2022-04-14 20:30:12,169 INFO L290 TraceCheckUtils]: 38: Hoare triple {765#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {765#false} is VALID [2022-04-14 20:30:12,169 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-14 20:30:12,169 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:30:12,948 INFO L290 TraceCheckUtils]: 38: Hoare triple {765#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {765#false} is VALID [2022-04-14 20:30:12,949 INFO L290 TraceCheckUtils]: 37: Hoare triple {888#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {765#false} is VALID [2022-04-14 20:30:12,949 INFO L290 TraceCheckUtils]: 36: Hoare triple {884#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {888#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:30:12,950 INFO L272 TraceCheckUtils]: 35: Hoare triple {904#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {884#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:30:12,951 INFO L290 TraceCheckUtils]: 34: Hoare triple {908#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {904#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} is VALID [2022-04-14 20:30:12,951 INFO L290 TraceCheckUtils]: 33: Hoare triple {912#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {908#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-14 20:30:12,953 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {865#(not (= |__VERIFIER_assert_#in~cond| 0))} {916#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {912#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is VALID [2022-04-14 20:30:12,953 INFO L290 TraceCheckUtils]: 31: Hoare triple {865#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {865#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:30:12,953 INFO L290 TraceCheckUtils]: 30: Hoare triple {926#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {865#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:30:12,955 INFO L290 TraceCheckUtils]: 29: Hoare triple {764#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {926#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 20:30:12,955 INFO L272 TraceCheckUtils]: 28: Hoare triple {916#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {764#true} is VALID [2022-04-14 20:30:12,956 INFO L290 TraceCheckUtils]: 27: Hoare triple {933#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {916#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is VALID [2022-04-14 20:30:12,957 INFO L290 TraceCheckUtils]: 26: Hoare triple {937#(or (<= (+ main_~x~0 1) main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* (* (+ main_~x~0 1) main_~y~0) 2) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* (+ main_~x~0 1) main_~Y~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {933#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} is VALID [2022-04-14 20:30:12,959 INFO L290 TraceCheckUtils]: 25: Hoare triple {941#(or (forall ((main_~Y~0 Int)) (= (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0)) (* 2 (* (+ main_~x~0 1) (+ main_~y~0 1))) (* (* main_~X~0 (+ main_~y~0 1)) (- 2))) (+ 2 (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))) (<= (+ main_~x~0 1) main_~X~0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {937#(or (<= (+ main_~x~0 1) main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* (* (+ main_~x~0 1) main_~y~0) 2) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* (+ main_~x~0 1) main_~Y~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))))} is VALID [2022-04-14 20:30:12,960 INFO L290 TraceCheckUtils]: 24: Hoare triple {764#true} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {941#(or (forall ((main_~Y~0 Int)) (= (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0)) (* 2 (* (+ main_~x~0 1) (+ main_~y~0 1))) (* (* main_~X~0 (+ main_~y~0 1)) (- 2))) (+ 2 (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-14 20:30:12,961 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {764#true} {764#true} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {764#true} is VALID [2022-04-14 20:30:12,961 INFO L290 TraceCheckUtils]: 22: Hoare triple {764#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,961 INFO L290 TraceCheckUtils]: 21: Hoare triple {764#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,961 INFO L290 TraceCheckUtils]: 20: Hoare triple {764#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {764#true} is VALID [2022-04-14 20:30:12,962 INFO L272 TraceCheckUtils]: 19: Hoare triple {764#true} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {764#true} is VALID [2022-04-14 20:30:12,962 INFO L290 TraceCheckUtils]: 18: Hoare triple {764#true} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {764#true} is VALID [2022-04-14 20:30:12,962 INFO L290 TraceCheckUtils]: 17: Hoare triple {764#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {764#true} is VALID [2022-04-14 20:30:12,962 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {764#true} {764#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {764#true} is VALID [2022-04-14 20:30:12,962 INFO L290 TraceCheckUtils]: 15: Hoare triple {764#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,966 INFO L290 TraceCheckUtils]: 14: Hoare triple {764#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,966 INFO L290 TraceCheckUtils]: 13: Hoare triple {764#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {764#true} is VALID [2022-04-14 20:30:12,966 INFO L272 TraceCheckUtils]: 12: Hoare triple {764#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {764#true} is VALID [2022-04-14 20:30:12,966 INFO L290 TraceCheckUtils]: 11: Hoare triple {764#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {764#true} is VALID [2022-04-14 20:30:12,966 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {764#true} {764#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {764#true} is VALID [2022-04-14 20:30:12,966 INFO L290 TraceCheckUtils]: 9: Hoare triple {764#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,967 INFO L290 TraceCheckUtils]: 8: Hoare triple {764#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,967 INFO L290 TraceCheckUtils]: 7: Hoare triple {764#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {764#true} is VALID [2022-04-14 20:30:12,967 INFO L272 TraceCheckUtils]: 6: Hoare triple {764#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {764#true} is VALID [2022-04-14 20:30:12,967 INFO L290 TraceCheckUtils]: 5: Hoare triple {764#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {764#true} is VALID [2022-04-14 20:30:12,967 INFO L272 TraceCheckUtils]: 4: Hoare triple {764#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,967 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {764#true} {764#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,967 INFO L290 TraceCheckUtils]: 2: Hoare triple {764#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,968 INFO L290 TraceCheckUtils]: 1: Hoare triple {764#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {764#true} is VALID [2022-04-14 20:30:12,971 INFO L272 TraceCheckUtils]: 0: Hoare triple {764#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-14 20:30:12,972 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 9 proven. 1 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-14 20:30:12,972 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:30:12,972 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2039551676] [2022-04-14 20:30:12,972 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:30:12,972 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1357711544] [2022-04-14 20:30:12,972 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1357711544] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:30:12,972 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 20:30:12,972 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 22 [2022-04-14 20:30:12,973 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1493978481] [2022-04-14 20:30:12,973 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 20:30:12,975 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 39 [2022-04-14 20:30:12,977 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:30:12,978 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-14 20:30:13,026 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:30:13,026 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-14 20:30:13,026 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:30:13,026 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-14 20:30:13,027 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-14 20:30:13,027 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-14 20:30:14,375 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:14,375 INFO L93 Difference]: Finished difference Result 58 states and 66 transitions. [2022-04-14 20:30:14,375 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-14 20:30:14,376 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 39 [2022-04-14 20:30:14,376 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:30:14,376 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-14 20:30:14,378 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-14 20:30:14,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-14 20:30:14,381 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-14 20:30:14,381 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 61 transitions. [2022-04-14 20:30:14,449 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:30:14,450 INFO L225 Difference]: With dead ends: 58 [2022-04-14 20:30:14,451 INFO L226 Difference]: Without dead ends: 52 [2022-04-14 20:30:14,451 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 56 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 265 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=217, Invalid=1115, Unknown=0, NotChecked=0, Total=1332 [2022-04-14 20:30:14,452 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 36 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 213 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 38 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 308 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 213 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 67 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-14 20:30:14,452 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [38 Valid, 177 Invalid, 308 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 213 Invalid, 0 Unknown, 67 Unchecked, 0.3s Time] [2022-04-14 20:30:14,453 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-14 20:30:14,456 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 41. [2022-04-14 20:30:14,456 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:30:14,457 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 20:30:14,457 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 20:30:14,457 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 20:30:14,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:14,460 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2022-04-14 20:30:14,460 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2022-04-14 20:30:14,460 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:30:14,460 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:30:14,461 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 52 states. [2022-04-14 20:30:14,461 INFO L87 Difference]: Start difference. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 52 states. [2022-04-14 20:30:14,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:30:14,463 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2022-04-14 20:30:14,463 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2022-04-14 20:30:14,463 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:30:14,464 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:30:14,464 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:30:14,464 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:30:14,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 20:30:14,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-14 20:30:14,467 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 39 [2022-04-14 20:30:14,467 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:30:14,468 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-14 20:30:14,468 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-14 20:30:14,468 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-14 20:30:14,469 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-14 20:30:14,469 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:30:14,469 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:30:14,487 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-14 20:30:14,669 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:30:14,670 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:30:14,670 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:30:14,670 INFO L85 PathProgramCache]: Analyzing trace with hash -1381917339, now seen corresponding path program 1 times [2022-04-14 20:30:14,670 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:30:14,670 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1854028340] [2022-04-14 20:30:14,671 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:30:14,671 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:30:14,688 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:30:14,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1398323514] [2022-04-14 20:30:14,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:30:14,688 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:30:14,689 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:30:14,689 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-14 20:30:14,716 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-14 20:30:14,748 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:14,749 INFO L263 TraceCheckSpWp]: Trace formula consists of 136 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-14 20:30:14,767 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:30:14,770 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:30:30,080 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-14 20:30:37,131 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-14 20:30:50,086 INFO L272 TraceCheckUtils]: 0: Hoare triple {1252#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:30:50,087 INFO L290 TraceCheckUtils]: 1: Hoare triple {1252#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1252#true} is VALID [2022-04-14 20:30:50,087 INFO L290 TraceCheckUtils]: 2: Hoare triple {1252#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:30:50,087 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1252#true} {1252#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:30:50,087 INFO L272 TraceCheckUtils]: 4: Hoare triple {1252#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:30:50,087 INFO L290 TraceCheckUtils]: 5: Hoare triple {1252#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1252#true} is VALID [2022-04-14 20:30:50,087 INFO L272 TraceCheckUtils]: 6: Hoare triple {1252#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1252#true} is VALID [2022-04-14 20:30:50,087 INFO L290 TraceCheckUtils]: 7: Hoare triple {1252#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1252#true} is VALID [2022-04-14 20:30:50,087 INFO L290 TraceCheckUtils]: 8: Hoare triple {1252#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:30:50,087 INFO L290 TraceCheckUtils]: 9: Hoare triple {1252#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:30:50,087 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1252#true} {1252#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1252#true} is VALID [2022-04-14 20:30:50,088 INFO L290 TraceCheckUtils]: 11: Hoare triple {1252#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {1252#true} is VALID [2022-04-14 20:30:50,088 INFO L272 TraceCheckUtils]: 12: Hoare triple {1252#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1252#true} is VALID [2022-04-14 20:30:50,088 INFO L290 TraceCheckUtils]: 13: Hoare triple {1252#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1252#true} is VALID [2022-04-14 20:30:50,088 INFO L290 TraceCheckUtils]: 14: Hoare triple {1252#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:30:50,088 INFO L290 TraceCheckUtils]: 15: Hoare triple {1252#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:30:50,088 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1252#true} {1252#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1252#true} is VALID [2022-04-14 20:30:50,088 INFO L290 TraceCheckUtils]: 17: Hoare triple {1252#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:30:50,089 INFO L290 TraceCheckUtils]: 18: Hoare triple {1308#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:30:50,089 INFO L272 TraceCheckUtils]: 19: Hoare triple {1308#(= main_~y~0 0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1252#true} is VALID [2022-04-14 20:30:50,089 INFO L290 TraceCheckUtils]: 20: Hoare triple {1252#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1252#true} is VALID [2022-04-14 20:30:50,089 INFO L290 TraceCheckUtils]: 21: Hoare triple {1252#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:30:50,089 INFO L290 TraceCheckUtils]: 22: Hoare triple {1252#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:30:50,090 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1252#true} {1308#(= main_~y~0 0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:30:50,090 INFO L290 TraceCheckUtils]: 24: Hoare triple {1308#(= main_~y~0 0)} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:30:50,090 INFO L290 TraceCheckUtils]: 25: Hoare triple {1308#(= main_~y~0 0)} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:30:50,091 INFO L290 TraceCheckUtils]: 26: Hoare triple {1308#(= main_~y~0 0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:30:50,091 INFO L290 TraceCheckUtils]: 27: Hoare triple {1308#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:30:50,091 INFO L272 TraceCheckUtils]: 28: Hoare triple {1308#(= main_~y~0 0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1252#true} is VALID [2022-04-14 20:30:50,092 INFO L290 TraceCheckUtils]: 29: Hoare triple {1252#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1345#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:30:50,092 INFO L290 TraceCheckUtils]: 30: Hoare triple {1345#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:30:50,093 INFO L290 TraceCheckUtils]: 31: Hoare triple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:30:50,093 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} {1308#(= main_~y~0 0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:30:50,094 INFO L290 TraceCheckUtils]: 33: Hoare triple {1308#(= main_~y~0 0)} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:30:50,094 INFO L290 TraceCheckUtils]: 34: Hoare triple {1308#(= main_~y~0 0)} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:30:50,094 INFO L290 TraceCheckUtils]: 35: Hoare triple {1308#(= main_~y~0 0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:30:50,095 INFO L290 TraceCheckUtils]: 36: Hoare triple {1308#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1368#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} is VALID [2022-04-14 20:30:50,095 INFO L272 TraceCheckUtils]: 37: Hoare triple {1368#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1252#true} is VALID [2022-04-14 20:30:50,095 INFO L290 TraceCheckUtils]: 38: Hoare triple {1252#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1345#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:30:50,110 INFO L290 TraceCheckUtils]: 39: Hoare triple {1345#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:30:50,110 INFO L290 TraceCheckUtils]: 40: Hoare triple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:30:50,111 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} {1368#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1384#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} is VALID [2022-04-14 20:30:50,112 INFO L290 TraceCheckUtils]: 42: Hoare triple {1384#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {1384#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} is VALID [2022-04-14 20:30:52,114 WARN L290 TraceCheckUtils]: 43: Hoare triple {1384#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1391#(and (= main_~y~0 0) (or (and (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~xy~0 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)))) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} is UNKNOWN [2022-04-14 20:30:52,116 INFO L272 TraceCheckUtils]: 44: Hoare triple {1391#(and (= main_~y~0 0) (or (and (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~xy~0 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)))) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1395#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:30:52,116 INFO L290 TraceCheckUtils]: 45: Hoare triple {1395#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1399#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:30:52,117 INFO L290 TraceCheckUtils]: 46: Hoare triple {1399#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1253#false} is VALID [2022-04-14 20:30:52,117 INFO L290 TraceCheckUtils]: 47: Hoare triple {1253#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1253#false} is VALID [2022-04-14 20:30:52,117 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 14 proven. 2 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2022-04-14 20:30:52,117 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:31:04,174 INFO L290 TraceCheckUtils]: 47: Hoare triple {1253#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1253#false} is VALID [2022-04-14 20:31:04,176 INFO L290 TraceCheckUtils]: 46: Hoare triple {1399#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1253#false} is VALID [2022-04-14 20:31:04,178 INFO L290 TraceCheckUtils]: 45: Hoare triple {1395#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1399#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:31:04,179 INFO L272 TraceCheckUtils]: 44: Hoare triple {1415#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1395#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:31:04,180 INFO L290 TraceCheckUtils]: 43: Hoare triple {1419#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1415#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} is VALID [2022-04-14 20:31:04,181 INFO L290 TraceCheckUtils]: 42: Hoare triple {1419#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {1419#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-14 20:31:04,182 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} {1426#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1419#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-14 20:31:04,183 INFO L290 TraceCheckUtils]: 40: Hoare triple {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:31:04,186 INFO L290 TraceCheckUtils]: 39: Hoare triple {1436#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1349#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:31:04,187 INFO L290 TraceCheckUtils]: 38: Hoare triple {1252#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1436#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 20:31:04,187 INFO L272 TraceCheckUtils]: 37: Hoare triple {1426#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1252#true} is VALID [2022-04-14 20:31:04,188 INFO L290 TraceCheckUtils]: 36: Hoare triple {1308#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1426#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-14 20:31:04,188 INFO L290 TraceCheckUtils]: 35: Hoare triple {1308#(= main_~y~0 0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:31:04,189 INFO L290 TraceCheckUtils]: 34: Hoare triple {1308#(= main_~y~0 0)} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:31:04,189 INFO L290 TraceCheckUtils]: 33: Hoare triple {1308#(= main_~y~0 0)} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:31:04,190 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1252#true} {1308#(= main_~y~0 0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:31:04,190 INFO L290 TraceCheckUtils]: 31: Hoare triple {1252#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,190 INFO L290 TraceCheckUtils]: 30: Hoare triple {1252#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,190 INFO L290 TraceCheckUtils]: 29: Hoare triple {1252#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1252#true} is VALID [2022-04-14 20:31:04,190 INFO L272 TraceCheckUtils]: 28: Hoare triple {1308#(= main_~y~0 0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1252#true} is VALID [2022-04-14 20:31:04,191 INFO L290 TraceCheckUtils]: 27: Hoare triple {1308#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:31:04,191 INFO L290 TraceCheckUtils]: 26: Hoare triple {1308#(= main_~y~0 0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:31:04,191 INFO L290 TraceCheckUtils]: 25: Hoare triple {1308#(= main_~y~0 0)} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:31:04,192 INFO L290 TraceCheckUtils]: 24: Hoare triple {1308#(= main_~y~0 0)} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:31:04,192 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1252#true} {1308#(= main_~y~0 0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:31:04,193 INFO L290 TraceCheckUtils]: 22: Hoare triple {1252#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,193 INFO L290 TraceCheckUtils]: 21: Hoare triple {1252#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,193 INFO L290 TraceCheckUtils]: 20: Hoare triple {1252#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1252#true} is VALID [2022-04-14 20:31:04,193 INFO L272 TraceCheckUtils]: 19: Hoare triple {1308#(= main_~y~0 0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1252#true} is VALID [2022-04-14 20:31:04,193 INFO L290 TraceCheckUtils]: 18: Hoare triple {1308#(= main_~y~0 0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:31:04,194 INFO L290 TraceCheckUtils]: 17: Hoare triple {1252#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {1308#(= main_~y~0 0)} is VALID [2022-04-14 20:31:04,194 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1252#true} {1252#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1252#true} is VALID [2022-04-14 20:31:04,194 INFO L290 TraceCheckUtils]: 15: Hoare triple {1252#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,194 INFO L290 TraceCheckUtils]: 14: Hoare triple {1252#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,194 INFO L290 TraceCheckUtils]: 13: Hoare triple {1252#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1252#true} is VALID [2022-04-14 20:31:04,194 INFO L272 TraceCheckUtils]: 12: Hoare triple {1252#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1252#true} is VALID [2022-04-14 20:31:04,194 INFO L290 TraceCheckUtils]: 11: Hoare triple {1252#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {1252#true} is VALID [2022-04-14 20:31:04,195 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1252#true} {1252#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1252#true} is VALID [2022-04-14 20:31:04,195 INFO L290 TraceCheckUtils]: 9: Hoare triple {1252#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,195 INFO L290 TraceCheckUtils]: 8: Hoare triple {1252#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,195 INFO L290 TraceCheckUtils]: 7: Hoare triple {1252#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1252#true} is VALID [2022-04-14 20:31:04,195 INFO L272 TraceCheckUtils]: 6: Hoare triple {1252#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1252#true} is VALID [2022-04-14 20:31:04,195 INFO L290 TraceCheckUtils]: 5: Hoare triple {1252#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1252#true} is VALID [2022-04-14 20:31:04,195 INFO L272 TraceCheckUtils]: 4: Hoare triple {1252#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,195 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1252#true} {1252#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,196 INFO L290 TraceCheckUtils]: 2: Hoare triple {1252#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,196 INFO L290 TraceCheckUtils]: 1: Hoare triple {1252#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1252#true} is VALID [2022-04-14 20:31:04,196 INFO L272 TraceCheckUtils]: 0: Hoare triple {1252#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-14 20:31:04,196 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 11 proven. 5 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2022-04-14 20:31:04,196 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:31:04,196 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1854028340] [2022-04-14 20:31:04,197 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:31:04,197 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1398323514] [2022-04-14 20:31:04,197 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1398323514] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:31:04,197 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 20:31:04,197 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-14 20:31:04,197 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [72712651] [2022-04-14 20:31:04,197 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 20:31:04,198 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 48 [2022-04-14 20:31:04,199 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:31:04,200 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-14 20:31:06,239 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-14 20:31:06,239 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-14 20:31:06,240 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:31:06,240 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-14 20:31:06,240 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-14 20:31:06,240 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-14 20:31:08,430 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-14 20:31:12,576 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-14 20:31:14,592 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-14 20:31:16,704 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-14 20:31:18,768 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-14 20:31:21,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:31:21,105 INFO L93 Difference]: Finished difference Result 54 states and 61 transitions. [2022-04-14 20:31:21,105 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-14 20:31:21,106 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 48 [2022-04-14 20:31:21,106 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:31:21,106 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-14 20:31:21,110 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 47 transitions. [2022-04-14 20:31:21,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-14 20:31:21,113 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 47 transitions. [2022-04-14 20:31:21,113 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 47 transitions. [2022-04-14 20:31:23,154 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 46 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-14 20:31:23,156 INFO L225 Difference]: With dead ends: 54 [2022-04-14 20:31:23,156 INFO L226 Difference]: Without dead ends: 50 [2022-04-14 20:31:23,156 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 81 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 4.4s TimeCoverageRelationStatistics Valid=66, Invalid=238, Unknown=2, NotChecked=0, Total=306 [2022-04-14 20:31:23,157 INFO L913 BasicCegarLoop]: 19 mSDtfsCounter, 26 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 137 mSolverCounterSat, 13 mSolverCounterUnsat, 5 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 10.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 155 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 137 IncrementalHoareTripleChecker+Invalid, 5 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 10.2s IncrementalHoareTripleChecker+Time [2022-04-14 20:31:23,157 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 136 Invalid, 155 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 137 Invalid, 5 Unknown, 0 Unchecked, 10.2s Time] [2022-04-14 20:31:23,158 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-14 20:31:23,160 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 44. [2022-04-14 20:31:23,160 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:31:23,161 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:31:23,161 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:31:23,161 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:31:23,163 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:31:23,163 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-14 20:31:23,163 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-14 20:31:23,164 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:31:23,164 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:31:23,164 INFO L74 IsIncluded]: Start isIncluded. First operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-14 20:31:23,164 INFO L87 Difference]: Start difference. First operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-14 20:31:23,166 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:31:23,166 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-14 20:31:23,166 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-14 20:31:23,167 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:31:23,167 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:31:23,167 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:31:23,167 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:31:23,167 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:31:23,169 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 49 transitions. [2022-04-14 20:31:23,169 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 49 transitions. Word has length 48 [2022-04-14 20:31:23,169 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:31:23,169 INFO L478 AbstractCegarLoop]: Abstraction has 44 states and 49 transitions. [2022-04-14 20:31:23,169 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-14 20:31:23,170 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 49 transitions. [2022-04-14 20:31:23,170 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-14 20:31:23,170 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:31:23,170 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:31:23,193 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-14 20:31:23,385 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:31:23,385 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:31:23,386 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:31:23,386 INFO L85 PathProgramCache]: Analyzing trace with hash -137152858, now seen corresponding path program 1 times [2022-04-14 20:31:23,386 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:31:23,386 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2126685165] [2022-04-14 20:31:23,386 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:31:23,386 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:31:23,406 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:31:23,406 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1525427141] [2022-04-14 20:31:23,407 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:31:23,407 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:31:23,407 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:31:23,411 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-14 20:31:23,412 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-14 20:31:23,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:31:23,472 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 20:31:23,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:31:23,491 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:31:30,576 INFO L272 TraceCheckUtils]: 0: Hoare triple {1759#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,576 INFO L290 TraceCheckUtils]: 1: Hoare triple {1759#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1759#true} is VALID [2022-04-14 20:31:30,576 INFO L290 TraceCheckUtils]: 2: Hoare triple {1759#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,577 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1759#true} {1759#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,577 INFO L272 TraceCheckUtils]: 4: Hoare triple {1759#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,577 INFO L290 TraceCheckUtils]: 5: Hoare triple {1759#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1759#true} is VALID [2022-04-14 20:31:30,577 INFO L272 TraceCheckUtils]: 6: Hoare triple {1759#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1759#true} is VALID [2022-04-14 20:31:30,577 INFO L290 TraceCheckUtils]: 7: Hoare triple {1759#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1759#true} is VALID [2022-04-14 20:31:30,577 INFO L290 TraceCheckUtils]: 8: Hoare triple {1759#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,577 INFO L290 TraceCheckUtils]: 9: Hoare triple {1759#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,577 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1759#true} {1759#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1759#true} is VALID [2022-04-14 20:31:30,577 INFO L290 TraceCheckUtils]: 11: Hoare triple {1759#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {1759#true} is VALID [2022-04-14 20:31:30,578 INFO L272 TraceCheckUtils]: 12: Hoare triple {1759#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1759#true} is VALID [2022-04-14 20:31:30,578 INFO L290 TraceCheckUtils]: 13: Hoare triple {1759#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1759#true} is VALID [2022-04-14 20:31:30,578 INFO L290 TraceCheckUtils]: 14: Hoare triple {1759#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,578 INFO L290 TraceCheckUtils]: 15: Hoare triple {1759#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,578 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1759#true} {1759#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1759#true} is VALID [2022-04-14 20:31:30,579 INFO L290 TraceCheckUtils]: 17: Hoare triple {1759#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-14 20:31:30,579 INFO L290 TraceCheckUtils]: 18: Hoare triple {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-14 20:31:30,579 INFO L272 TraceCheckUtils]: 19: Hoare triple {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1759#true} is VALID [2022-04-14 20:31:30,579 INFO L290 TraceCheckUtils]: 20: Hoare triple {1759#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1759#true} is VALID [2022-04-14 20:31:30,579 INFO L290 TraceCheckUtils]: 21: Hoare triple {1759#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,579 INFO L290 TraceCheckUtils]: 22: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,580 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1759#true} {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-14 20:31:30,580 INFO L290 TraceCheckUtils]: 24: Hoare triple {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-14 20:31:30,581 INFO L290 TraceCheckUtils]: 25: Hoare triple {1815#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {1840#(and (<= main_~x~0 0) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-14 20:31:30,582 INFO L290 TraceCheckUtils]: 26: Hoare triple {1840#(and (<= main_~x~0 0) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1844#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-14 20:31:30,582 INFO L290 TraceCheckUtils]: 27: Hoare triple {1844#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1844#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-14 20:31:30,583 INFO L272 TraceCheckUtils]: 28: Hoare triple {1844#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1759#true} is VALID [2022-04-14 20:31:30,583 INFO L290 TraceCheckUtils]: 29: Hoare triple {1759#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1759#true} is VALID [2022-04-14 20:31:30,583 INFO L290 TraceCheckUtils]: 30: Hoare triple {1759#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,583 INFO L290 TraceCheckUtils]: 31: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,588 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1759#true} {1844#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1844#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-14 20:31:30,588 INFO L290 TraceCheckUtils]: 33: Hoare triple {1844#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1844#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-14 20:31:30,591 INFO L290 TraceCheckUtils]: 34: Hoare triple {1844#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {1869#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} is VALID [2022-04-14 20:31:30,592 INFO L290 TraceCheckUtils]: 35: Hoare triple {1869#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1873#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-14 20:31:30,592 INFO L290 TraceCheckUtils]: 36: Hoare triple {1873#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1873#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-14 20:31:30,592 INFO L272 TraceCheckUtils]: 37: Hoare triple {1873#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1759#true} is VALID [2022-04-14 20:31:30,592 INFO L290 TraceCheckUtils]: 38: Hoare triple {1759#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1759#true} is VALID [2022-04-14 20:31:30,592 INFO L290 TraceCheckUtils]: 39: Hoare triple {1759#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,592 INFO L290 TraceCheckUtils]: 40: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:30,593 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1759#true} {1873#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1873#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-14 20:31:30,594 INFO L290 TraceCheckUtils]: 42: Hoare triple {1873#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {1760#false} is VALID [2022-04-14 20:31:30,594 INFO L290 TraceCheckUtils]: 43: Hoare triple {1760#false} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1760#false} is VALID [2022-04-14 20:31:30,594 INFO L272 TraceCheckUtils]: 44: Hoare triple {1760#false} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1760#false} is VALID [2022-04-14 20:31:30,594 INFO L290 TraceCheckUtils]: 45: Hoare triple {1760#false} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1760#false} is VALID [2022-04-14 20:31:30,594 INFO L290 TraceCheckUtils]: 46: Hoare triple {1760#false} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1760#false} is VALID [2022-04-14 20:31:30,594 INFO L290 TraceCheckUtils]: 47: Hoare triple {1760#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1760#false} is VALID [2022-04-14 20:31:30,595 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 6 proven. 11 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-14 20:31:30,595 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:31:31,034 INFO L290 TraceCheckUtils]: 47: Hoare triple {1760#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1760#false} is VALID [2022-04-14 20:31:31,035 INFO L290 TraceCheckUtils]: 46: Hoare triple {1760#false} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1760#false} is VALID [2022-04-14 20:31:31,035 INFO L290 TraceCheckUtils]: 45: Hoare triple {1760#false} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1760#false} is VALID [2022-04-14 20:31:31,035 INFO L272 TraceCheckUtils]: 44: Hoare triple {1760#false} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1760#false} is VALID [2022-04-14 20:31:31,035 INFO L290 TraceCheckUtils]: 43: Hoare triple {1760#false} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1760#false} is VALID [2022-04-14 20:31:31,036 INFO L290 TraceCheckUtils]: 42: Hoare triple {1925#(<= main_~x~0 main_~X~0)} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {1760#false} is VALID [2022-04-14 20:31:31,037 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1759#true} {1925#(<= main_~x~0 main_~X~0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1925#(<= main_~x~0 main_~X~0)} is VALID [2022-04-14 20:31:31,037 INFO L290 TraceCheckUtils]: 40: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,037 INFO L290 TraceCheckUtils]: 39: Hoare triple {1759#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,037 INFO L290 TraceCheckUtils]: 38: Hoare triple {1759#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1759#true} is VALID [2022-04-14 20:31:31,037 INFO L272 TraceCheckUtils]: 37: Hoare triple {1925#(<= main_~x~0 main_~X~0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1759#true} is VALID [2022-04-14 20:31:31,037 INFO L290 TraceCheckUtils]: 36: Hoare triple {1925#(<= main_~x~0 main_~X~0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1925#(<= main_~x~0 main_~X~0)} is VALID [2022-04-14 20:31:31,038 INFO L290 TraceCheckUtils]: 35: Hoare triple {1947#(<= (+ main_~x~0 1) main_~X~0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1925#(<= main_~x~0 main_~X~0)} is VALID [2022-04-14 20:31:31,038 INFO L290 TraceCheckUtils]: 34: Hoare triple {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {1947#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-14 20:31:31,039 INFO L290 TraceCheckUtils]: 33: Hoare triple {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-14 20:31:31,044 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1759#true} {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-14 20:31:31,044 INFO L290 TraceCheckUtils]: 31: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,044 INFO L290 TraceCheckUtils]: 30: Hoare triple {1759#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,044 INFO L290 TraceCheckUtils]: 29: Hoare triple {1759#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1759#true} is VALID [2022-04-14 20:31:31,044 INFO L272 TraceCheckUtils]: 28: Hoare triple {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1759#true} is VALID [2022-04-14 20:31:31,045 INFO L290 TraceCheckUtils]: 27: Hoare triple {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-14 20:31:31,046 INFO L290 TraceCheckUtils]: 26: Hoare triple {1976#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {1951#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-14 20:31:31,047 INFO L290 TraceCheckUtils]: 25: Hoare triple {1980#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {1976#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} is VALID [2022-04-14 20:31:31,048 INFO L290 TraceCheckUtils]: 24: Hoare triple {1980#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {1980#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-14 20:31:31,048 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1759#true} {1980#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1980#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-14 20:31:31,049 INFO L290 TraceCheckUtils]: 22: Hoare triple {1759#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,049 INFO L290 TraceCheckUtils]: 21: Hoare triple {1759#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,049 INFO L290 TraceCheckUtils]: 20: Hoare triple {1759#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1759#true} is VALID [2022-04-14 20:31:31,049 INFO L272 TraceCheckUtils]: 19: Hoare triple {1980#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1759#true} is VALID [2022-04-14 20:31:31,049 INFO L290 TraceCheckUtils]: 18: Hoare triple {1980#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1980#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-14 20:31:31,050 INFO L290 TraceCheckUtils]: 17: Hoare triple {1759#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {1980#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-14 20:31:31,050 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1759#true} {1759#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1759#true} is VALID [2022-04-14 20:31:31,051 INFO L290 TraceCheckUtils]: 15: Hoare triple {1759#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,051 INFO L290 TraceCheckUtils]: 14: Hoare triple {1759#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,051 INFO L290 TraceCheckUtils]: 13: Hoare triple {1759#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1759#true} is VALID [2022-04-14 20:31:31,051 INFO L272 TraceCheckUtils]: 12: Hoare triple {1759#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {1759#true} is VALID [2022-04-14 20:31:31,051 INFO L290 TraceCheckUtils]: 11: Hoare triple {1759#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {1759#true} is VALID [2022-04-14 20:31:31,051 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1759#true} {1759#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1759#true} is VALID [2022-04-14 20:31:31,051 INFO L290 TraceCheckUtils]: 9: Hoare triple {1759#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,051 INFO L290 TraceCheckUtils]: 8: Hoare triple {1759#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,052 INFO L290 TraceCheckUtils]: 7: Hoare triple {1759#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1759#true} is VALID [2022-04-14 20:31:31,052 INFO L272 TraceCheckUtils]: 6: Hoare triple {1759#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {1759#true} is VALID [2022-04-14 20:31:31,052 INFO L290 TraceCheckUtils]: 5: Hoare triple {1759#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1759#true} is VALID [2022-04-14 20:31:31,052 INFO L272 TraceCheckUtils]: 4: Hoare triple {1759#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,052 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1759#true} {1759#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,052 INFO L290 TraceCheckUtils]: 2: Hoare triple {1759#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,052 INFO L290 TraceCheckUtils]: 1: Hoare triple {1759#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1759#true} is VALID [2022-04-14 20:31:31,058 INFO L272 TraceCheckUtils]: 0: Hoare triple {1759#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-14 20:31:31,059 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 6 proven. 11 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-14 20:31:31,059 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:31:31,059 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2126685165] [2022-04-14 20:31:31,059 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:31:31,059 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1525427141] [2022-04-14 20:31:31,059 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1525427141] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:31:31,059 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 20:31:31,059 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-14 20:31:31,059 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [850703668] [2022-04-14 20:31:31,060 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 20:31:31,060 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) Word has length 48 [2022-04-14 20:31:31,060 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:31:31,061 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-14 20:31:31,107 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-14 20:31:31,107 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-14 20:31:31,107 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:31:31,107 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-14 20:31:31,108 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-14 20:31:31,108 INFO L87 Difference]: Start difference. First operand 44 states and 49 transitions. Second operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-14 20:31:32,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:31:32,131 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-14 20:31:32,131 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-14 20:31:32,131 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) Word has length 48 [2022-04-14 20:31:32,131 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:31:32,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-14 20:31:32,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 53 transitions. [2022-04-14 20:31:32,143 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-14 20:31:32,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 53 transitions. [2022-04-14 20:31:32,145 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 53 transitions. [2022-04-14 20:31:32,194 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-14 20:31:32,196 INFO L225 Difference]: With dead ends: 59 [2022-04-14 20:31:32,196 INFO L226 Difference]: Without dead ends: 59 [2022-04-14 20:31:32,196 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 85 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=59, Invalid=181, Unknown=0, NotChecked=0, Total=240 [2022-04-14 20:31:32,197 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 5 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 171 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 180 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 171 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-14 20:31:32,197 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 136 Invalid, 180 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 171 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-14 20:31:32,198 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-04-14 20:31:32,201 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 51. [2022-04-14 20:31:32,201 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:31:32,201 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 20:31:32,202 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 20:31:32,202 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 20:31:32,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:31:32,205 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-14 20:31:32,205 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-14 20:31:32,205 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:31:32,205 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:31:32,206 INFO L74 IsIncluded]: Start isIncluded. First operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 59 states. [2022-04-14 20:31:32,206 INFO L87 Difference]: Start difference. First operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 59 states. [2022-04-14 20:31:32,208 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:31:32,208 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-14 20:31:32,208 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-14 20:31:32,209 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:31:32,209 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:31:32,209 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:31:32,209 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:31:32,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 20:31:32,211 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 59 transitions. [2022-04-14 20:31:32,211 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 59 transitions. Word has length 48 [2022-04-14 20:31:32,211 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:31:32,211 INFO L478 AbstractCegarLoop]: Abstraction has 51 states and 59 transitions. [2022-04-14 20:31:32,212 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-14 20:31:32,212 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 59 transitions. [2022-04-14 20:31:32,212 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-14 20:31:32,212 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:31:32,212 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:31:32,238 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-14 20:31:32,427 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:31:32,427 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:31:32,428 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:31:32,428 INFO L85 PathProgramCache]: Analyzing trace with hash -545218702, now seen corresponding path program 2 times [2022-04-14 20:31:32,428 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:31:32,428 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1181543564] [2022-04-14 20:31:32,428 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:31:32,428 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:31:32,447 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:31:32,447 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [370446381] [2022-04-14 20:31:32,447 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-14 20:31:32,447 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:31:32,447 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:31:32,448 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-14 20:31:32,454 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-14 20:31:32,500 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-14 20:31:32,500 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-14 20:31:32,501 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 20:31:32,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:31:32,517 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:31:33,875 INFO L272 TraceCheckUtils]: 0: Hoare triple {2294#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,875 INFO L290 TraceCheckUtils]: 1: Hoare triple {2294#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2294#true} is VALID [2022-04-14 20:31:33,875 INFO L290 TraceCheckUtils]: 2: Hoare triple {2294#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,875 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2294#true} {2294#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,875 INFO L272 TraceCheckUtils]: 4: Hoare triple {2294#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,875 INFO L290 TraceCheckUtils]: 5: Hoare triple {2294#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2294#true} is VALID [2022-04-14 20:31:33,876 INFO L272 TraceCheckUtils]: 6: Hoare triple {2294#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2294#true} is VALID [2022-04-14 20:31:33,876 INFO L290 TraceCheckUtils]: 7: Hoare triple {2294#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2294#true} is VALID [2022-04-14 20:31:33,876 INFO L290 TraceCheckUtils]: 8: Hoare triple {2294#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,876 INFO L290 TraceCheckUtils]: 9: Hoare triple {2294#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,876 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2294#true} {2294#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2294#true} is VALID [2022-04-14 20:31:33,876 INFO L290 TraceCheckUtils]: 11: Hoare triple {2294#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {2294#true} is VALID [2022-04-14 20:31:33,876 INFO L272 TraceCheckUtils]: 12: Hoare triple {2294#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2294#true} is VALID [2022-04-14 20:31:33,877 INFO L290 TraceCheckUtils]: 13: Hoare triple {2294#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2294#true} is VALID [2022-04-14 20:31:33,877 INFO L290 TraceCheckUtils]: 14: Hoare triple {2294#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,877 INFO L290 TraceCheckUtils]: 15: Hoare triple {2294#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,877 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2294#true} {2294#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2294#true} is VALID [2022-04-14 20:31:33,880 INFO L290 TraceCheckUtils]: 17: Hoare triple {2294#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-14 20:31:33,880 INFO L290 TraceCheckUtils]: 18: Hoare triple {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-14 20:31:33,880 INFO L272 TraceCheckUtils]: 19: Hoare triple {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2294#true} is VALID [2022-04-14 20:31:33,880 INFO L290 TraceCheckUtils]: 20: Hoare triple {2294#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2294#true} is VALID [2022-04-14 20:31:33,880 INFO L290 TraceCheckUtils]: 21: Hoare triple {2294#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,880 INFO L290 TraceCheckUtils]: 22: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,881 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2294#true} {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-14 20:31:33,881 INFO L290 TraceCheckUtils]: 24: Hoare triple {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-14 20:31:33,882 INFO L290 TraceCheckUtils]: 25: Hoare triple {2350#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2375#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-14 20:31:33,883 INFO L290 TraceCheckUtils]: 26: Hoare triple {2375#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-14 20:31:33,885 INFO L290 TraceCheckUtils]: 27: Hoare triple {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-14 20:31:33,885 INFO L272 TraceCheckUtils]: 28: Hoare triple {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2294#true} is VALID [2022-04-14 20:31:33,885 INFO L290 TraceCheckUtils]: 29: Hoare triple {2294#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2294#true} is VALID [2022-04-14 20:31:33,885 INFO L290 TraceCheckUtils]: 30: Hoare triple {2294#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,885 INFO L290 TraceCheckUtils]: 31: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,886 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2294#true} {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-14 20:31:33,886 INFO L290 TraceCheckUtils]: 33: Hoare triple {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-14 20:31:33,887 INFO L290 TraceCheckUtils]: 34: Hoare triple {2379#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {2404#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-14 20:31:33,888 INFO L290 TraceCheckUtils]: 35: Hoare triple {2404#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-14 20:31:33,888 INFO L290 TraceCheckUtils]: 36: Hoare triple {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-14 20:31:33,888 INFO L272 TraceCheckUtils]: 37: Hoare triple {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2294#true} is VALID [2022-04-14 20:31:33,888 INFO L290 TraceCheckUtils]: 38: Hoare triple {2294#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2294#true} is VALID [2022-04-14 20:31:33,888 INFO L290 TraceCheckUtils]: 39: Hoare triple {2294#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,888 INFO L290 TraceCheckUtils]: 40: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,889 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2294#true} {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-14 20:31:33,890 INFO L290 TraceCheckUtils]: 42: Hoare triple {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-14 20:31:33,890 INFO L290 TraceCheckUtils]: 43: Hoare triple {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-14 20:31:33,891 INFO L290 TraceCheckUtils]: 44: Hoare triple {2408#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2436#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-14 20:31:33,891 INFO L290 TraceCheckUtils]: 45: Hoare triple {2436#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2436#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-14 20:31:33,891 INFO L272 TraceCheckUtils]: 46: Hoare triple {2436#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2294#true} is VALID [2022-04-14 20:31:33,891 INFO L290 TraceCheckUtils]: 47: Hoare triple {2294#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2294#true} is VALID [2022-04-14 20:31:33,891 INFO L290 TraceCheckUtils]: 48: Hoare triple {2294#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,891 INFO L290 TraceCheckUtils]: 49: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:33,892 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2294#true} {2436#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2436#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-14 20:31:33,892 INFO L290 TraceCheckUtils]: 51: Hoare triple {2436#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {2295#false} is VALID [2022-04-14 20:31:33,892 INFO L290 TraceCheckUtils]: 52: Hoare triple {2295#false} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2295#false} is VALID [2022-04-14 20:31:33,893 INFO L272 TraceCheckUtils]: 53: Hoare triple {2295#false} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2295#false} is VALID [2022-04-14 20:31:33,893 INFO L290 TraceCheckUtils]: 54: Hoare triple {2295#false} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2295#false} is VALID [2022-04-14 20:31:33,893 INFO L290 TraceCheckUtils]: 55: Hoare triple {2295#false} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2295#false} is VALID [2022-04-14 20:31:33,893 INFO L290 TraceCheckUtils]: 56: Hoare triple {2295#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2295#false} is VALID [2022-04-14 20:31:33,893 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 8 proven. 24 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-14 20:31:33,893 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:31:34,312 INFO L290 TraceCheckUtils]: 56: Hoare triple {2295#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2295#false} is VALID [2022-04-14 20:31:34,312 INFO L290 TraceCheckUtils]: 55: Hoare triple {2295#false} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2295#false} is VALID [2022-04-14 20:31:34,312 INFO L290 TraceCheckUtils]: 54: Hoare triple {2295#false} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2295#false} is VALID [2022-04-14 20:31:34,312 INFO L272 TraceCheckUtils]: 53: Hoare triple {2295#false} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2295#false} is VALID [2022-04-14 20:31:34,312 INFO L290 TraceCheckUtils]: 52: Hoare triple {2295#false} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2295#false} is VALID [2022-04-14 20:31:34,313 INFO L290 TraceCheckUtils]: 51: Hoare triple {2488#(<= main_~x~0 main_~X~0)} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {2295#false} is VALID [2022-04-14 20:31:34,313 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2294#true} {2488#(<= main_~x~0 main_~X~0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2488#(<= main_~x~0 main_~X~0)} is VALID [2022-04-14 20:31:34,313 INFO L290 TraceCheckUtils]: 49: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,313 INFO L290 TraceCheckUtils]: 48: Hoare triple {2294#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,313 INFO L290 TraceCheckUtils]: 47: Hoare triple {2294#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2294#true} is VALID [2022-04-14 20:31:34,314 INFO L272 TraceCheckUtils]: 46: Hoare triple {2488#(<= main_~x~0 main_~X~0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2294#true} is VALID [2022-04-14 20:31:34,314 INFO L290 TraceCheckUtils]: 45: Hoare triple {2488#(<= main_~x~0 main_~X~0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2488#(<= main_~x~0 main_~X~0)} is VALID [2022-04-14 20:31:34,315 INFO L290 TraceCheckUtils]: 44: Hoare triple {2510#(<= (+ main_~x~0 1) main_~X~0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2488#(<= main_~x~0 main_~X~0)} is VALID [2022-04-14 20:31:34,315 INFO L290 TraceCheckUtils]: 43: Hoare triple {2510#(<= (+ main_~x~0 1) main_~X~0)} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2510#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-14 20:31:34,315 INFO L290 TraceCheckUtils]: 42: Hoare triple {2510#(<= (+ main_~x~0 1) main_~X~0)} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2510#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-14 20:31:34,316 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2294#true} {2510#(<= (+ main_~x~0 1) main_~X~0)} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2510#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-14 20:31:34,316 INFO L290 TraceCheckUtils]: 40: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,316 INFO L290 TraceCheckUtils]: 39: Hoare triple {2294#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,316 INFO L290 TraceCheckUtils]: 38: Hoare triple {2294#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2294#true} is VALID [2022-04-14 20:31:34,316 INFO L272 TraceCheckUtils]: 37: Hoare triple {2510#(<= (+ main_~x~0 1) main_~X~0)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2294#true} is VALID [2022-04-14 20:31:34,318 INFO L290 TraceCheckUtils]: 36: Hoare triple {2510#(<= (+ main_~x~0 1) main_~X~0)} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2510#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-14 20:31:34,319 INFO L290 TraceCheckUtils]: 35: Hoare triple {2538#(<= (+ main_~x~0 2) main_~X~0)} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2510#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-14 20:31:34,319 INFO L290 TraceCheckUtils]: 34: Hoare triple {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {2538#(<= (+ main_~x~0 2) main_~X~0)} is VALID [2022-04-14 20:31:34,320 INFO L290 TraceCheckUtils]: 33: Hoare triple {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-14 20:31:34,320 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2294#true} {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-14 20:31:34,320 INFO L290 TraceCheckUtils]: 31: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,320 INFO L290 TraceCheckUtils]: 30: Hoare triple {2294#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,320 INFO L290 TraceCheckUtils]: 29: Hoare triple {2294#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2294#true} is VALID [2022-04-14 20:31:34,320 INFO L272 TraceCheckUtils]: 28: Hoare triple {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2294#true} is VALID [2022-04-14 20:31:34,321 INFO L290 TraceCheckUtils]: 27: Hoare triple {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-14 20:31:34,321 INFO L290 TraceCheckUtils]: 26: Hoare triple {2567#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2542#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-14 20:31:34,322 INFO L290 TraceCheckUtils]: 25: Hoare triple {2571#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2567#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-14 20:31:34,322 INFO L290 TraceCheckUtils]: 24: Hoare triple {2571#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2571#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-14 20:31:34,323 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2294#true} {2571#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2571#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-14 20:31:34,323 INFO L290 TraceCheckUtils]: 22: Hoare triple {2294#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,323 INFO L290 TraceCheckUtils]: 21: Hoare triple {2294#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,323 INFO L290 TraceCheckUtils]: 20: Hoare triple {2294#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2294#true} is VALID [2022-04-14 20:31:34,323 INFO L272 TraceCheckUtils]: 19: Hoare triple {2571#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2294#true} is VALID [2022-04-14 20:31:34,324 INFO L290 TraceCheckUtils]: 18: Hoare triple {2571#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2571#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-14 20:31:34,325 INFO L290 TraceCheckUtils]: 17: Hoare triple {2294#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {2571#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-14 20:31:34,325 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2294#true} {2294#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2294#true} is VALID [2022-04-14 20:31:34,325 INFO L290 TraceCheckUtils]: 15: Hoare triple {2294#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,325 INFO L290 TraceCheckUtils]: 14: Hoare triple {2294#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,325 INFO L290 TraceCheckUtils]: 13: Hoare triple {2294#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2294#true} is VALID [2022-04-14 20:31:34,325 INFO L272 TraceCheckUtils]: 12: Hoare triple {2294#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2294#true} is VALID [2022-04-14 20:31:34,325 INFO L290 TraceCheckUtils]: 11: Hoare triple {2294#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {2294#true} is VALID [2022-04-14 20:31:34,325 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2294#true} {2294#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2294#true} is VALID [2022-04-14 20:31:34,325 INFO L290 TraceCheckUtils]: 9: Hoare triple {2294#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,325 INFO L290 TraceCheckUtils]: 8: Hoare triple {2294#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,326 INFO L290 TraceCheckUtils]: 7: Hoare triple {2294#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2294#true} is VALID [2022-04-14 20:31:34,326 INFO L272 TraceCheckUtils]: 6: Hoare triple {2294#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2294#true} is VALID [2022-04-14 20:31:34,326 INFO L290 TraceCheckUtils]: 5: Hoare triple {2294#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2294#true} is VALID [2022-04-14 20:31:34,326 INFO L272 TraceCheckUtils]: 4: Hoare triple {2294#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,326 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2294#true} {2294#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,326 INFO L290 TraceCheckUtils]: 2: Hoare triple {2294#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,326 INFO L290 TraceCheckUtils]: 1: Hoare triple {2294#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2294#true} is VALID [2022-04-14 20:31:34,326 INFO L272 TraceCheckUtils]: 0: Hoare triple {2294#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-14 20:31:34,327 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 8 proven. 24 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-14 20:31:34,327 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:31:34,327 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1181543564] [2022-04-14 20:31:34,327 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:31:34,327 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [370446381] [2022-04-14 20:31:34,327 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [370446381] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:31:34,327 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 20:31:34,327 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-14 20:31:34,327 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1520669837] [2022-04-14 20:31:34,328 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 20:31:34,328 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) Word has length 57 [2022-04-14 20:31:34,329 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:31:34,329 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-14 20:31:34,400 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:31:34,400 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-14 20:31:34,400 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:31:34,401 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-14 20:31:34,401 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-04-14 20:31:34,401 INFO L87 Difference]: Start difference. First operand 51 states and 59 transitions. Second operand has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-14 20:31:35,106 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:31:35,107 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-14 20:31:35,107 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-14 20:31:35,108 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) Word has length 57 [2022-04-14 20:31:35,108 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:31:35,109 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-14 20:31:35,111 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 59 transitions. [2022-04-14 20:31:35,111 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-14 20:31:35,112 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 59 transitions. [2022-04-14 20:31:35,113 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 59 transitions. [2022-04-14 20:31:35,160 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-14 20:31:35,163 INFO L225 Difference]: With dead ends: 72 [2022-04-14 20:31:35,163 INFO L226 Difference]: Without dead ends: 72 [2022-04-14 20:31:35,163 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 101 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=64, Invalid=208, Unknown=0, NotChecked=0, Total=272 [2022-04-14 20:31:35,164 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 10 mSDsluCounter, 124 mSDsCounter, 0 mSdLazyCounter, 186 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 199 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 186 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-14 20:31:35,164 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 156 Invalid, 199 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 186 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-14 20:31:35,165 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states. [2022-04-14 20:31:35,174 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 56. [2022-04-14 20:31:35,174 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:31:35,174 INFO L82 GeneralOperation]: Start isEquivalent. First operand 72 states. Second operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 20:31:35,174 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 20:31:35,174 INFO L87 Difference]: Start difference. First operand 72 states. Second operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 20:31:35,177 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:31:35,177 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-14 20:31:35,177 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 87 transitions. [2022-04-14 20:31:35,177 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:31:35,178 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:31:35,178 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 72 states. [2022-04-14 20:31:35,178 INFO L87 Difference]: Start difference. First operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 72 states. [2022-04-14 20:31:35,180 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:31:35,181 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-14 20:31:35,181 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 87 transitions. [2022-04-14 20:31:35,181 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:31:35,181 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:31:35,181 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:31:35,181 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:31:35,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 20:31:35,183 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 66 transitions. [2022-04-14 20:31:35,183 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 66 transitions. Word has length 57 [2022-04-14 20:31:35,183 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:31:35,183 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 66 transitions. [2022-04-14 20:31:35,184 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-14 20:31:35,184 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 66 transitions. [2022-04-14 20:31:35,184 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-14 20:31:35,184 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:31:35,185 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:31:35,210 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-14 20:31:35,399 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:31:35,400 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:31:35,400 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:31:35,400 INFO L85 PathProgramCache]: Analyzing trace with hash 494880272, now seen corresponding path program 3 times [2022-04-14 20:31:35,400 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:31:35,400 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1768957470] [2022-04-14 20:31:35,400 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:31:35,400 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:31:35,418 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:31:35,418 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [168965257] [2022-04-14 20:31:35,418 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-14 20:31:35,418 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:31:35,418 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:31:35,420 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-14 20:31:35,426 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-14 20:31:35,704 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-14 20:31:35,704 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-14 20:31:35,705 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-14 20:31:35,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:31:35,755 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:31:55,355 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-14 20:32:03,675 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-14 20:32:08,686 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-14 20:33:22,541 INFO L272 TraceCheckUtils]: 0: Hoare triple {2927#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:33:22,542 INFO L290 TraceCheckUtils]: 1: Hoare triple {2927#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2927#true} is VALID [2022-04-14 20:33:22,542 INFO L290 TraceCheckUtils]: 2: Hoare triple {2927#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:33:22,542 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2927#true} {2927#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:33:22,542 INFO L272 TraceCheckUtils]: 4: Hoare triple {2927#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:33:22,542 INFO L290 TraceCheckUtils]: 5: Hoare triple {2927#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2927#true} is VALID [2022-04-14 20:33:22,542 INFO L272 TraceCheckUtils]: 6: Hoare triple {2927#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2927#true} is VALID [2022-04-14 20:33:22,542 INFO L290 TraceCheckUtils]: 7: Hoare triple {2927#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2953#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:33:22,543 INFO L290 TraceCheckUtils]: 8: Hoare triple {2953#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2957#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:33:22,543 INFO L290 TraceCheckUtils]: 9: Hoare triple {2957#(not (= |assume_abort_if_not_#in~cond| 0))} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2957#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:33:22,544 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2957#(not (= |assume_abort_if_not_#in~cond| 0))} {2927#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2964#(and (<= main_~X~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,544 INFO L290 TraceCheckUtils]: 11: Hoare triple {2964#(and (<= main_~X~0 20) (<= 0 main_~X~0))} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {2964#(and (<= main_~X~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,544 INFO L272 TraceCheckUtils]: 12: Hoare triple {2964#(and (<= main_~X~0 20) (<= 0 main_~X~0))} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2927#true} is VALID [2022-04-14 20:33:22,544 INFO L290 TraceCheckUtils]: 13: Hoare triple {2927#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2953#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:33:22,545 INFO L290 TraceCheckUtils]: 14: Hoare triple {2953#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2957#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:33:22,545 INFO L290 TraceCheckUtils]: 15: Hoare triple {2957#(not (= |assume_abort_if_not_#in~cond| 0))} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2957#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:33:22,546 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2957#(not (= |assume_abort_if_not_#in~cond| 0))} {2964#(and (<= main_~X~0 20) (<= 0 main_~X~0))} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,546 INFO L290 TraceCheckUtils]: 17: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,546 INFO L290 TraceCheckUtils]: 18: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,546 INFO L272 TraceCheckUtils]: 19: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:33:22,547 INFO L290 TraceCheckUtils]: 20: Hoare triple {2927#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2927#true} is VALID [2022-04-14 20:33:22,547 INFO L290 TraceCheckUtils]: 21: Hoare triple {2927#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:33:22,547 INFO L290 TraceCheckUtils]: 22: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:33:22,547 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2927#true} {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,548 INFO L290 TraceCheckUtils]: 24: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,548 INFO L290 TraceCheckUtils]: 25: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,548 INFO L290 TraceCheckUtils]: 26: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,549 INFO L290 TraceCheckUtils]: 27: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,549 INFO L272 TraceCheckUtils]: 28: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:33:22,549 INFO L290 TraceCheckUtils]: 29: Hoare triple {2927#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2927#true} is VALID [2022-04-14 20:33:22,549 INFO L290 TraceCheckUtils]: 30: Hoare triple {2927#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:33:22,549 INFO L290 TraceCheckUtils]: 31: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:33:22,550 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2927#true} {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,550 INFO L290 TraceCheckUtils]: 33: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,550 INFO L290 TraceCheckUtils]: 34: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,551 INFO L290 TraceCheckUtils]: 35: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,551 INFO L290 TraceCheckUtils]: 36: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,551 INFO L272 TraceCheckUtils]: 37: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:33:22,551 INFO L290 TraceCheckUtils]: 38: Hoare triple {2927#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2927#true} is VALID [2022-04-14 20:33:22,551 INFO L290 TraceCheckUtils]: 39: Hoare triple {2927#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:33:22,551 INFO L290 TraceCheckUtils]: 40: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:33:22,552 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2927#true} {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,552 INFO L290 TraceCheckUtils]: 42: Hoare triple {2983#(and (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {3062#(and (<= main_~x~0 main_~X~0) (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,553 INFO L290 TraceCheckUtils]: 43: Hoare triple {3062#(and (<= main_~x~0 main_~X~0) (<= main_~X~0 20) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {3066#(and (<= main_~x~0 main_~X~0) (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} is VALID [2022-04-14 20:33:22,554 INFO L290 TraceCheckUtils]: 44: Hoare triple {3066#(and (<= main_~x~0 main_~X~0) (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {3070#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-14 20:33:22,554 INFO L290 TraceCheckUtils]: 45: Hoare triple {3070#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (<= main_~x~0 (+ main_~X~0 1)))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3074#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-14 20:33:22,555 INFO L272 TraceCheckUtils]: 46: Hoare triple {3074#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:33:22,555 INFO L290 TraceCheckUtils]: 47: Hoare triple {2927#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3081#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:33:22,555 INFO L290 TraceCheckUtils]: 48: Hoare triple {3081#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:33:22,555 INFO L290 TraceCheckUtils]: 49: Hoare triple {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:33:22,557 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} {3074#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)) (<= main_~x~0 (+ main_~X~0 1)))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3092#(and (<= main_~X~0 20) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-14 20:33:22,557 INFO L290 TraceCheckUtils]: 51: Hoare triple {3092#(and (<= main_~X~0 20) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (<= main_~x~0 (+ main_~X~0 1)))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {3096#(and (<= main_~X~0 20) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)) (<= main_~x~0 (+ main_~X~0 1)))} is VALID [2022-04-14 20:33:23,113 INFO L290 TraceCheckUtils]: 52: Hoare triple {3096#(and (<= main_~X~0 20) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)) (<= main_~x~0 (+ main_~X~0 1)))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3100#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (or (and (or (and (= (mod main_~xy~0 main_~y~0) 0) (not (= main_~y~0 0)) (<= (div main_~xy~0 main_~y~0) (+ main_~X~0 1)) (< main_~X~0 (div main_~xy~0 main_~y~0))) (and (= main_~xy~0 0) (= main_~y~0 0))) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0))) (= main_~Y~0 0)) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (<= (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) (+ main_~X~0 1)) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (<= (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) main_~X~0)) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} is VALID [2022-04-14 20:33:23,125 INFO L272 TraceCheckUtils]: 53: Hoare triple {3100#(and (<= main_~X~0 20) (< main_~v~0 (* main_~Y~0 2)) (<= 0 main_~Y~0) (<= main_~Y~0 20) (<= 0 main_~X~0) (or (and (or (and (= (mod main_~xy~0 main_~y~0) 0) (not (= main_~y~0 0)) (<= (div main_~xy~0 main_~y~0) (+ main_~X~0 1)) (< main_~X~0 (div main_~xy~0 main_~y~0))) (and (= main_~xy~0 0) (= main_~y~0 0))) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0))) (= main_~Y~0 0)) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (<= (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) (+ main_~X~0 1)) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (<= (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) main_~X~0)) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {3104#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:33:23,125 INFO L290 TraceCheckUtils]: 54: Hoare triple {3104#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3108#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:33:23,126 INFO L290 TraceCheckUtils]: 55: Hoare triple {3108#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2928#false} is VALID [2022-04-14 20:33:23,126 INFO L290 TraceCheckUtils]: 56: Hoare triple {2928#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2928#false} is VALID [2022-04-14 20:33:23,126 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 29 proven. 1 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-14 20:33:23,126 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:33:27,895 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-14 20:33:37,755 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-14 20:34:29,353 INFO L290 TraceCheckUtils]: 56: Hoare triple {2928#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2928#false} is VALID [2022-04-14 20:34:29,354 INFO L290 TraceCheckUtils]: 55: Hoare triple {3108#(<= 1 __VERIFIER_assert_~cond)} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2928#false} is VALID [2022-04-14 20:34:29,354 INFO L290 TraceCheckUtils]: 54: Hoare triple {3104#(<= 1 |__VERIFIER_assert_#in~cond|)} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3108#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:34:29,355 INFO L272 TraceCheckUtils]: 53: Hoare triple {3124#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [91] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~y~0_8 2) (* v_main_~xy~0_7 (- 2)) (* 2 v_main_~Y~0_13) (* v_main_~yx~0_7 2) (* (- 1) v_main_~X~0_14) (* (- 1) v_main_~v~0_10)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_13, main_~X~0=v_main_~X~0_14, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {3104#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:34:29,356 INFO L290 TraceCheckUtils]: 52: Hoare triple {3128#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [89] L32-3-->L50: Formula: (and (= v_main_~yx~0_1 (* v_main_~Y~0_3 v_main_~x~0_3)) (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_3))) InVars {main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_3} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_3} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3124#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} is VALID [2022-04-14 20:34:29,356 INFO L290 TraceCheckUtils]: 51: Hoare triple {3132#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [92] L35-1-->L32-3: Formula: (not (<= v_main_~x~0_7 v_main_~X~0_10)) InVars {main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} OutVars{main_~x~0=v_main_~x~0_7, main_~X~0=v_main_~X~0_10} AuxVars[] AssignedVars[] {3128#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-14 20:34:29,357 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} {3136#(or (<= main_~x~0 main_~X~0) (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3132#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is VALID [2022-04-14 20:34:29,358 INFO L290 TraceCheckUtils]: 49: Hoare triple {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:34:29,358 INFO L290 TraceCheckUtils]: 48: Hoare triple {3146#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3085#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:34:29,358 INFO L290 TraceCheckUtils]: 47: Hoare triple {2927#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3146#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 20:34:29,358 INFO L272 TraceCheckUtils]: 46: Hoare triple {3136#(or (<= main_~x~0 main_~X~0) (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:34:31,361 WARN L290 TraceCheckUtils]: 45: Hoare triple {3153#(or (<= main_~x~0 main_~X~0) (and (or (= (+ main_~X~0 main_~v~0 (* (* (div (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) main_~x~0) 2)) (+ (* main_~Y~0 2) (* (div (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) 2) (* 2 (* main_~Y~0 main_~x~0)))) (not (= (mod (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) 0)) (= main_~X~0 0) (not (= (mod (+ main_~X~0 main_~v~0 (* (- 2) main_~Y~0 main_~x~0)) 2) 0))) (or (forall ((main_~y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))) (not (= main_~X~0 0)) (not (= (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) 0)) (not (= (mod (+ main_~X~0 main_~v~0 (* (- 2) main_~Y~0 main_~x~0)) 2) 0)))))} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3136#(or (<= main_~x~0 main_~X~0) (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is UNKNOWN [2022-04-14 20:34:31,377 INFO L290 TraceCheckUtils]: 44: Hoare triple {3157#(forall ((v_main_~x~0_30 Int)) (or (not (<= v_main_~x~0_30 (+ main_~x~0 1))) (and (or (not (= (mod (+ main_~X~0 main_~v~0 (* v_main_~x~0_30 (- 2) main_~Y~0)) 2) 0)) (forall ((main_~y~0 Int)) (= (+ (* 2 (* v_main_~x~0_30 main_~y~0)) main_~X~0 main_~v~0) (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* main_~y~0 2) (* main_~Y~0 2)))) (not (= main_~X~0 0)) (not (= 0 (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0)))) (or (not (= (mod (+ main_~X~0 main_~v~0 (* v_main_~x~0_30 (- 2) main_~Y~0)) 2) 0)) (= main_~X~0 0) (= (+ main_~X~0 main_~v~0 (* (* v_main_~x~0_30 (div (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0)) 2)) (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* (div (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0) 2) (* main_~Y~0 2))) (not (= (mod (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0) 0)))) (<= v_main_~x~0_30 main_~X~0)))} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {3153#(or (<= main_~x~0 main_~X~0) (and (or (= (+ main_~X~0 main_~v~0 (* (* (div (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) main_~x~0) 2)) (+ (* main_~Y~0 2) (* (div (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) 2) (* 2 (* main_~Y~0 main_~x~0)))) (not (= (mod (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) main_~X~0) 0)) (= main_~X~0 0) (not (= (mod (+ main_~X~0 main_~v~0 (* (- 2) main_~Y~0 main_~x~0)) 2) 0))) (or (forall ((main_~y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))) (not (= main_~X~0 0)) (not (= (+ (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0 (* main_~Y~0 main_~x~0)) 0)) (not (= (mod (+ main_~X~0 main_~v~0 (* (- 2) main_~Y~0 main_~x~0)) 2) 0)))))} is VALID [2022-04-14 20:34:33,417 WARN L290 TraceCheckUtils]: 43: Hoare triple {3161#(forall ((v_main_~x~0_30 Int)) (or (not (<= v_main_~x~0_30 (+ main_~x~0 1))) (<= v_main_~x~0_30 main_~X~0) (and (or (and (or (<= (div (- main_~X~0) (- 2)) (* v_main_~x~0_30 main_~Y~0)) (forall ((main_~y~0 Int)) (<= main_~y~0 (* v_main_~x~0_30 main_~y~0)))) (or (<= (div (- main_~X~0) (- 2)) (* v_main_~x~0_30 main_~Y~0)) (forall ((main_~y~0 Int)) (<= (* v_main_~x~0_30 main_~y~0) main_~y~0)))) (not (= main_~X~0 0))) (or (forall ((aux_div_main_~v~0_66 Int)) (or (not (= (mod (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0) 0)) (<= main_~X~0 (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* 2 aux_div_main_~v~0_66))) (= (+ (* 2 (* v_main_~x~0_30 (div (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0))) (* 2 aux_div_main_~v~0_66)) (* (div (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0) 2)))) (= main_~X~0 0)))))} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {3157#(forall ((v_main_~x~0_30 Int)) (or (not (<= v_main_~x~0_30 (+ main_~x~0 1))) (and (or (not (= (mod (+ main_~X~0 main_~v~0 (* v_main_~x~0_30 (- 2) main_~Y~0)) 2) 0)) (forall ((main_~y~0 Int)) (= (+ (* 2 (* v_main_~x~0_30 main_~y~0)) main_~X~0 main_~v~0) (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* main_~y~0 2) (* main_~Y~0 2)))) (not (= main_~X~0 0)) (not (= 0 (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0)))) (or (not (= (mod (+ main_~X~0 main_~v~0 (* v_main_~x~0_30 (- 2) main_~Y~0)) 2) 0)) (= main_~X~0 0) (= (+ main_~X~0 main_~v~0 (* (* v_main_~x~0_30 (div (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0)) 2)) (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* (div (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0) 2) (* main_~Y~0 2))) (not (= (mod (+ (* v_main_~x~0_30 main_~Y~0) (div (+ main_~X~0 main_~v~0) (- 2)) main_~Y~0) main_~X~0) 0)))) (<= v_main_~x~0_30 main_~X~0)))} is UNKNOWN [2022-04-14 20:34:33,432 INFO L290 TraceCheckUtils]: 42: Hoare triple {2927#true} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {3161#(forall ((v_main_~x~0_30 Int)) (or (not (<= v_main_~x~0_30 (+ main_~x~0 1))) (<= v_main_~x~0_30 main_~X~0) (and (or (and (or (<= (div (- main_~X~0) (- 2)) (* v_main_~x~0_30 main_~Y~0)) (forall ((main_~y~0 Int)) (<= main_~y~0 (* v_main_~x~0_30 main_~y~0)))) (or (<= (div (- main_~X~0) (- 2)) (* v_main_~x~0_30 main_~Y~0)) (forall ((main_~y~0 Int)) (<= (* v_main_~x~0_30 main_~y~0) main_~y~0)))) (not (= main_~X~0 0))) (or (forall ((aux_div_main_~v~0_66 Int)) (or (not (= (mod (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0) 0)) (<= main_~X~0 (+ (* (* v_main_~x~0_30 main_~Y~0) 2) (* 2 aux_div_main_~v~0_66))) (= (+ (* 2 (* v_main_~x~0_30 (div (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0))) (* 2 aux_div_main_~v~0_66)) (* (div (+ (* v_main_~x~0_30 main_~Y~0) main_~Y~0 (div (+ (* v_main_~x~0_30 main_~Y~0 2) (* main_~Y~0 2) (* 2 aux_div_main_~v~0_66)) (- 2))) main_~X~0) 2)))) (= main_~X~0 0)))))} is VALID [2022-04-14 20:34:33,432 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2927#true} {2927#true} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:34:33,432 INFO L290 TraceCheckUtils]: 40: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,432 INFO L290 TraceCheckUtils]: 39: Hoare triple {2927#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,432 INFO L290 TraceCheckUtils]: 38: Hoare triple {2927#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2927#true} is VALID [2022-04-14 20:34:33,432 INFO L272 TraceCheckUtils]: 37: Hoare triple {2927#true} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L290 TraceCheckUtils]: 36: Hoare triple {2927#true} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L290 TraceCheckUtils]: 35: Hoare triple {2927#true} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L290 TraceCheckUtils]: 34: Hoare triple {2927#true} [96] L40-->L40-2: Formula: (and (= (+ v_main_~v~0_2 (* v_main_~Y~0_1 2)) v_main_~v~0_1) (< v_main_~v~0_2 0)) InVars {main_~v~0=v_main_~v~0_2, main_~Y~0=v_main_~Y~0_1} OutVars{main_~v~0=v_main_~v~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~v~0] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L290 TraceCheckUtils]: 33: Hoare triple {2927#true} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2927#true} {2927#true} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L290 TraceCheckUtils]: 31: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L290 TraceCheckUtils]: 30: Hoare triple {2927#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L290 TraceCheckUtils]: 29: Hoare triple {2927#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L272 TraceCheckUtils]: 28: Hoare triple {2927#true} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L290 TraceCheckUtils]: 27: Hoare triple {2927#true} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L290 TraceCheckUtils]: 26: Hoare triple {2927#true} [101] L40-2-->L32-2: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post7] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L290 TraceCheckUtils]: 25: Hoare triple {2927#true} [97] L40-->L40-2: Formula: (and (not (< v_main_~v~0_4 0)) (= v_main_~y~0_1 (+ v_main_~y~0_2 1)) (= v_main_~v~0_3 (+ v_main_~v~0_4 (* (- 2) v_main_~X~0_1) (* v_main_~Y~0_2 2)))) InVars {main_~y~0=v_main_~y~0_2, main_~v~0=v_main_~v~0_4, main_~Y~0=v_main_~Y~0_2, main_~X~0=v_main_~X~0_1} OutVars{main_~y~0=v_main_~y~0_1, main_~v~0=v_main_~v~0_3, main_~Y~0=v_main_~Y~0_2, main_#t~post6=|v_main_#t~post6_1|, main_~X~0=v_main_~X~0_1} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post6] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L290 TraceCheckUtils]: 24: Hoare triple {2927#true} [93] L35-1-->L40: Formula: (<= v_main_~x~0_8 v_main_~X~0_11) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_11} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,433 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2927#true} {2927#true} [109] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L290 TraceCheckUtils]: 22: Hoare triple {2927#true} [104] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L290 TraceCheckUtils]: 21: Hoare triple {2927#true} [99] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L290 TraceCheckUtils]: 20: Hoare triple {2927#true} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L272 TraceCheckUtils]: 19: Hoare triple {2927#true} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L290 TraceCheckUtils]: 18: Hoare triple {2927#true} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L290 TraceCheckUtils]: 17: Hoare triple {2927#true} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2927#true} {2927#true} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L290 TraceCheckUtils]: 15: Hoare triple {2927#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L290 TraceCheckUtils]: 14: Hoare triple {2927#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L290 TraceCheckUtils]: 13: Hoare triple {2927#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L272 TraceCheckUtils]: 12: Hoare triple {2927#true} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L290 TraceCheckUtils]: 11: Hoare triple {2927#true} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {2927#true} is VALID [2022-04-14 20:34:33,434 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2927#true} {2927#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2927#true} is VALID [2022-04-14 20:34:33,435 INFO L290 TraceCheckUtils]: 9: Hoare triple {2927#true} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,435 INFO L290 TraceCheckUtils]: 8: Hoare triple {2927#true} [83] L11-->L11-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,435 INFO L290 TraceCheckUtils]: 7: Hoare triple {2927#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2927#true} is VALID [2022-04-14 20:34:33,435 INFO L272 TraceCheckUtils]: 6: Hoare triple {2927#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {2927#true} is VALID [2022-04-14 20:34:33,435 INFO L290 TraceCheckUtils]: 5: Hoare triple {2927#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2927#true} is VALID [2022-04-14 20:34:33,435 INFO L272 TraceCheckUtils]: 4: Hoare triple {2927#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,435 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2927#true} {2927#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,435 INFO L290 TraceCheckUtils]: 2: Hoare triple {2927#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,436 INFO L290 TraceCheckUtils]: 1: Hoare triple {2927#true} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2927#true} is VALID [2022-04-14 20:34:33,436 INFO L272 TraceCheckUtils]: 0: Hoare triple {2927#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-14 20:34:33,436 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 29 proven. 1 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-14 20:34:33,436 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:34:33,436 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1768957470] [2022-04-14 20:34:33,436 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:34:33,436 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [168965257] [2022-04-14 20:34:33,437 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [168965257] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:34:33,437 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 20:34:33,437 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13] total 25 [2022-04-14 20:34:33,437 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1093459010] [2022-04-14 20:34:33,437 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 20:34:33,438 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) Word has length 57 [2022-04-14 20:34:33,438 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:34:33,438 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-14 20:34:38,046 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 64 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-14 20:34:38,046 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-14 20:34:38,046 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:34:38,046 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-14 20:34:38,047 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=98, Invalid=497, Unknown=5, NotChecked=0, Total=600 [2022-04-14 20:34:38,047 INFO L87 Difference]: Start difference. First operand 56 states and 66 transitions. Second operand has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-14 20:35:02,139 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:35:02,139 INFO L93 Difference]: Finished difference Result 60 states and 72 transitions. [2022-04-14 20:35:02,139 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-14 20:35:02,140 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) Word has length 57 [2022-04-14 20:35:02,140 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:35:02,140 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-14 20:35:02,141 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 44 transitions. [2022-04-14 20:35:02,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-14 20:35:02,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 44 transitions. [2022-04-14 20:35:02,143 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 44 transitions. [2022-04-14 20:35:05,181 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:35:05,182 INFO L225 Difference]: With dead ends: 60 [2022-04-14 20:35:05,182 INFO L226 Difference]: Without dead ends: 0 [2022-04-14 20:35:05,182 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 89 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 278 ImplicationChecksByTransitivity, 49.9s TimeCoverageRelationStatistics Valid=242, Invalid=1085, Unknown=5, NotChecked=0, Total=1332 [2022-04-14 20:35:05,183 INFO L913 BasicCegarLoop]: 16 mSDtfsCounter, 29 mSDsluCounter, 135 mSDsCounter, 0 mSdLazyCounter, 283 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 151 SdHoareTripleChecker+Invalid, 344 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 283 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 42 IncrementalHoareTripleChecker+Unchecked, 3.3s IncrementalHoareTripleChecker+Time [2022-04-14 20:35:05,183 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 151 Invalid, 344 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 283 Invalid, 0 Unknown, 42 Unchecked, 3.3s Time] [2022-04-14 20:35:05,183 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-14 20:35:05,183 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-14 20:35:05,183 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:35:05,183 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:35:05,184 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:35:05,184 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:35:05,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:35:05,184 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 20:35:05,184 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:35:05,184 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:35:05,184 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:35:05,184 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 20:35:05,184 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 20:35:05,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:35:05,184 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 20:35:05,184 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:35:05,185 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:35:05,185 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:35:05,185 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:35:05,185 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:35:05,185 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:35:05,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-14 20:35:05,185 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 57 [2022-04-14 20:35:05,185 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:35:05,185 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-14 20:35:05,185 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-14 20:35:05,185 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:35:05,185 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:35:05,187 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 20:35:05,192 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-14 20:35:05,388 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:35:05,390 INFO L719 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1, 1] [2022-04-14 20:35:05,391 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 20:35:05,393 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 08:35:05 BasicIcfg [2022-04-14 20:35:05,393 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 20:35:05,394 INFO L158 Benchmark]: Toolchain (without parser) took 297318.65ms. Allocated memory was 199.2MB in the beginning and 287.3MB in the end (delta: 88.1MB). Free memory was 148.4MB in the beginning and 212.1MB in the end (delta: -63.7MB). Peak memory consumption was 25.9MB. Max. memory is 8.0GB. [2022-04-14 20:35:05,394 INFO L158 Benchmark]: CDTParser took 0.12ms. Allocated memory is still 199.2MB. Free memory is still 164.6MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 20:35:05,394 INFO L158 Benchmark]: CACSL2BoogieTranslator took 292.91ms. Allocated memory was 199.2MB in the beginning and 239.1MB in the end (delta: 39.8MB). Free memory was 148.3MB in the beginning and 215.3MB in the end (delta: -67.1MB). Peak memory consumption was 11.1MB. Max. memory is 8.0GB. [2022-04-14 20:35:05,395 INFO L158 Benchmark]: Boogie Preprocessor took 30.64ms. Allocated memory is still 239.1MB. Free memory was 215.3MB in the beginning and 213.9MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 20:35:05,395 INFO L158 Benchmark]: RCFGBuilder took 285.70ms. Allocated memory is still 239.1MB. Free memory was 213.9MB in the beginning and 201.3MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-14 20:35:05,395 INFO L158 Benchmark]: IcfgTransformer took 33.49ms. Allocated memory is still 239.1MB. Free memory was 201.3MB in the beginning and 199.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-14 20:35:05,397 INFO L158 Benchmark]: TraceAbstraction took 296668.67ms. Allocated memory was 239.1MB in the beginning and 287.3MB in the end (delta: 48.2MB). Free memory was 198.7MB in the beginning and 212.1MB in the end (delta: -13.5MB). Peak memory consumption was 34.8MB. Max. memory is 8.0GB. [2022-04-14 20:35:05,399 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.12ms. Allocated memory is still 199.2MB. Free memory is still 164.6MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 292.91ms. Allocated memory was 199.2MB in the beginning and 239.1MB in the end (delta: 39.8MB). Free memory was 148.3MB in the beginning and 215.3MB in the end (delta: -67.1MB). Peak memory consumption was 11.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 30.64ms. Allocated memory is still 239.1MB. Free memory was 215.3MB in the beginning and 213.9MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 285.70ms. Allocated memory is still 239.1MB. Free memory was 213.9MB in the beginning and 201.3MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 33.49ms. Allocated memory is still 239.1MB. Free memory was 201.3MB in the beginning and 199.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 296668.67ms. Allocated memory was 239.1MB in the beginning and 287.3MB in the end (delta: 48.2MB). Free memory was 198.7MB in the beginning and 212.1MB in the end (delta: -13.5MB). Peak memory consumption was 34.8MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 16]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 32 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 296.6s, OverallIterations: 8, TraceHistogramMax: 5, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 48.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 5 mSolverCounterUnknown, 159 SdHoareTripleChecker+Valid, 14.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 150 mSDsluCounter, 991 SdHoareTripleChecker+Invalid, 14.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 109 IncrementalHoareTripleChecker+Unchecked, 798 mSDsCounter, 102 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1214 IncrementalHoareTripleChecker+Invalid, 1430 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 102 mSolverCounterUnsat, 193 mSDtfsCounter, 1214 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 632 GetRequests, 491 SyntacticMatches, 6 SemanticMatches, 135 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 673 ImplicationChecksByTransitivity, 55.9s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=56occurred in iteration=7, InterpolantAutomatonStates: 103, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 8 MinimizatonAttempts, 43 StatesRemovedByMinimization, 6 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.4s SatisfiabilityAnalysisTime, 238.7s InterpolantComputationTime, 327 NumberOfCodeBlocks, 309 NumberOfCodeBlocksAsserted, 10 NumberOfCheckSat, 594 ConstructedInterpolants, 6 QuantifiedInterpolants, 3378 SizeOfPredicates, 50 NumberOfNonLiveVariables, 854 ConjunctsInSsa, 129 ConjunctsInUnsatCore, 14 InterpolantComputations, 2 PerfectInterpolantSequences, 339/426 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-14 20:35:05,615 WARN L435 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forcibly destroying the process [2022-04-14 20:35:05,660 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 137 Received shutdown request...