/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-34549b5 [2022-04-07 18:22:17,091 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 18:22:17,093 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 18:22:17,142 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 18:22:17,142 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 18:22:17,144 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 18:22:17,146 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 18:22:17,148 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 18:22:17,150 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 18:22:17,154 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 18:22:17,154 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 18:22:17,156 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 18:22:17,156 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 18:22:17,157 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 18:22:17,158 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 18:22:17,159 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 18:22:17,159 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 18:22:17,160 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 18:22:17,162 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 18:22:17,166 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 18:22:17,168 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 18:22:17,169 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 18:22:17,169 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 18:22:17,170 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 18:22:17,172 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 18:22:17,177 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 18:22:17,177 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 18:22:17,177 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 18:22:17,178 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 18:22:17,178 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 18:22:17,180 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 18:22:17,180 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 18:22:17,181 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 18:22:17,182 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 18:22:17,182 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 18:22:17,183 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 18:22:17,183 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 18:22:17,184 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 18:22:17,184 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 18:22:17,184 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 18:22:17,184 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 18:22:17,186 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 18:22:17,186 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-07 18:22:17,200 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 18:22:17,201 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 18:22:17,202 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 18:22:17,202 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 18:22:17,202 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 18:22:17,202 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 18:22:17,202 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 18:22:17,202 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 18:22:17,202 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 18:22:17,203 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 18:22:17,203 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 18:22:17,203 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 18:22:17,203 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 18:22:17,204 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 18:22:17,204 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 18:22:17,204 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 18:22:17,204 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 18:22:17,204 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 18:22:17,204 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 18:22:17,204 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 18:22:17,204 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 18:22:17,205 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 18:22:17,205 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-07 18:22:17,394 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 18:22:17,415 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 18:22:17,417 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 18:22:17,418 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 18:22:17,418 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 18:22:17,419 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c [2022-04-07 18:22:17,472 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/14880c757/5e7727b7070b447fb380b77c42307708/FLAG0dbc6a2cd [2022-04-07 18:22:17,873 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 18:22:17,873 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c [2022-04-07 18:22:17,879 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/14880c757/5e7727b7070b447fb380b77c42307708/FLAG0dbc6a2cd [2022-04-07 18:22:17,895 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/14880c757/5e7727b7070b447fb380b77c42307708 [2022-04-07 18:22:17,897 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 18:22:17,899 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 18:22:17,901 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 18:22:17,901 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 18:22:17,904 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 18:22:17,905 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 06:22:17" (1/1) ... [2022-04-07 18:22:17,905 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@215e6738 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:22:17, skipping insertion in model container [2022-04-07 18:22:17,906 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 06:22:17" (1/1) ... [2022-04-07 18:22:17,912 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 18:22:17,923 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 18:22:18,093 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c[597,610] [2022-04-07 18:22:18,132 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 18:22:18,138 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 18:22:18,149 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_valuebound20.c[597,610] [2022-04-07 18:22:18,155 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 18:22:18,168 INFO L208 MainTranslator]: Completed translation [2022-04-07 18:22:18,168 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:22:18 WrapperNode [2022-04-07 18:22:18,168 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 18:22:18,169 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 18:22:18,169 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 18:22:18,170 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 18:22:18,178 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:22:18" (1/1) ... [2022-04-07 18:22:18,178 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:22:18" (1/1) ... [2022-04-07 18:22:18,183 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:22:18" (1/1) ... [2022-04-07 18:22:18,184 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:22:18" (1/1) ... [2022-04-07 18:22:18,197 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:22:18" (1/1) ... [2022-04-07 18:22:18,202 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:22:18" (1/1) ... [2022-04-07 18:22:18,206 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:22:18" (1/1) ... [2022-04-07 18:22:18,209 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 18:22:18,210 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 18:22:18,210 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 18:22:18,210 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 18:22:18,211 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:22:18" (1/1) ... [2022-04-07 18:22:18,216 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 18:22:18,223 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:22:18,236 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 18:22:18,258 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 18:22:18,272 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 18:22:18,272 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 18:22:18,272 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 18:22:18,272 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 18:22:18,273 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 18:22:18,273 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 18:22:18,273 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 18:22:18,273 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 18:22:18,273 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 18:22:18,273 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 18:22:18,273 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 18:22:18,273 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 18:22:18,274 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 18:22:18,274 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 18:22:18,274 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 18:22:18,275 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 18:22:18,275 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 18:22:18,275 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 18:22:18,275 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 18:22:18,275 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 18:22:18,333 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 18:22:18,335 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 18:22:18,513 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 18:22:18,519 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 18:22:18,519 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-07 18:22:18,520 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:22:18 BoogieIcfgContainer [2022-04-07 18:22:18,520 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 18:22:18,521 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 18:22:18,521 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 18:22:18,522 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 18:22:18,524 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:22:18" (1/1) ... [2022-04-07 18:22:18,526 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 18:22:18,560 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 06:22:18 BasicIcfg [2022-04-07 18:22:18,561 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 18:22:18,562 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 18:22:18,562 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 18:22:18,564 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 18:22:18,565 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 06:22:17" (1/4) ... [2022-04-07 18:22:18,567 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@57f108be and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 06:22:18, skipping insertion in model container [2022-04-07 18:22:18,567 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:22:18" (2/4) ... [2022-04-07 18:22:18,568 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@57f108be and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 06:22:18, skipping insertion in model container [2022-04-07 18:22:18,568 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:22:18" (3/4) ... [2022-04-07 18:22:18,568 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@57f108be and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 06:22:18, skipping insertion in model container [2022-04-07 18:22:18,568 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 06:22:18" (4/4) ... [2022-04-07 18:22:18,569 INFO L111 eAbstractionObserver]: Analyzing ICFG bresenham-ll_valuebound20.cJordan [2022-04-07 18:22:18,583 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 18:22:18,583 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 18:22:18,631 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 18:22:18,645 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-07 18:22:18,645 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 18:22:18,663 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 18:22:18,669 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-07 18:22:18,670 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:22:18,670 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:22:18,671 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:22:18,676 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:22:18,676 INFO L85 PathProgramCache]: Analyzing trace with hash -1563578423, now seen corresponding path program 1 times [2022-04-07 18:22:18,684 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:22:18,685 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2123619439] [2022-04-07 18:22:18,685 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:22:18,686 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:22:18,787 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:18,836 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 18:22:18,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:18,851 INFO L290 TraceCheckUtils]: 0: Hoare triple {48#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35#true} is VALID [2022-04-07 18:22:18,851 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 18:22:18,852 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 18:22:18,852 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 18:22:18,854 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:18,859 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 18:22:18,860 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 18:22:18,860 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 18:22:18,860 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 18:22:18,861 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-07 18:22:18,862 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:18,867 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 18:22:18,868 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 18:22:18,868 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 18:22:18,868 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 18:22:18,869 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} [72] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 18:22:18,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {48#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [74] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35#true} is VALID [2022-04-07 18:22:18,870 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} [77] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 18:22:18,870 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} [105] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 18:22:18,870 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 18:22:18,871 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} [76] mainENTRY-->L25: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~X~0_3 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_6, main_~x~0=v_main_~x~0_4, main_~yx~0=v_main_~yx~0_3, main_~Y~0=v_main_~Y~0_5, main_~X~0=v_main_~X~0_3, main_~xy~0=v_main_~xy~0_3, main_~y~0=v_main_~y~0_5} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~x~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {35#true} is VALID [2022-04-07 18:22:18,871 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} [78] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-07 18:22:18,871 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 18:22:18,872 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 18:22:18,872 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 18:22:18,872 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} [106] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~X~0_12) (<= v_main_~X~0_12 20)) 1 0)) InVars {main_~X~0=v_main_~X~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~X~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 18:22:18,873 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} [79] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~Y~0_6 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~Y~0=v_main_~Y~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~Y~0] {36#false} is VALID [2022-04-07 18:22:18,873 INFO L272 TraceCheckUtils]: 12: Hoare triple {36#false} [81] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-07 18:22:18,873 INFO L290 TraceCheckUtils]: 13: Hoare triple {35#true} [80] assume_abort_if_notENTRY-->L11: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 18:22:18,874 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} [82] L11-->L11-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 18:22:18,874 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} [85] L11-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 18:22:18,874 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {36#false} {36#false} [107] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~Y~0_11) (<= v_main_~Y~0_11 20)) 1 0)) InVars {main_~Y~0=v_main_~Y~0_11} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~Y~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 18:22:18,874 INFO L290 TraceCheckUtils]: 17: Hoare triple {36#false} [84] L27-1-->L32-2: Formula: (and (= v_main_~x~0_5 0) (= v_main_~y~0_6 0) (= (+ (* v_main_~Y~0_8 2) (* (- 1) v_main_~X~0_7)) v_main_~v~0_7)) InVars {main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~y~0=v_main_~y~0_6, main_~v~0=v_main_~v~0_7, main_~x~0=v_main_~x~0_5, main_~Y~0=v_main_~Y~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[main_~v~0, main_~x~0, main_~y~0] {36#false} is VALID [2022-04-07 18:22:18,875 INFO L290 TraceCheckUtils]: 18: Hoare triple {36#false} [88] L32-2-->L35: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_9 v_main_~x~0_6)) (= v_main_~xy~0_4 (* v_main_~X~0_8 v_main_~y~0_7))) InVars {main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_6, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_6, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_8, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {36#false} is VALID [2022-04-07 18:22:18,875 INFO L272 TraceCheckUtils]: 19: Hoare triple {36#false} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_13) (* v_main_~xy~0_6 (- 2)) (* (- 1) v_main_~v~0_9) (* 2 v_main_~Y~0_12) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_9, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_12, main_~X~0=v_main_~X~0_13} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {36#false} is VALID [2022-04-07 18:22:18,875 INFO L290 TraceCheckUtils]: 20: Hoare triple {36#false} [94] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {36#false} is VALID [2022-04-07 18:22:18,876 INFO L290 TraceCheckUtils]: 21: Hoare triple {36#false} [98] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 18:22:18,876 INFO L290 TraceCheckUtils]: 22: Hoare triple {36#false} [102] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 18:22:18,876 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-07 18:22:18,877 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:22:18,877 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2123619439] [2022-04-07 18:22:18,877 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2123619439] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:22:18,878 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:22:18,878 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 18:22:18,879 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [627812390] [2022-04-07 18:22:18,879 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:22:18,884 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-07 18:22:18,885 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:22:18,887 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 18:22:18,911 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:22:18,912 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 18:22:18,912 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:22:18,928 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 18:22:18,929 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 18:22:18,931 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 18:22:19,066 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:19,066 INFO L93 Difference]: Finished difference Result 32 states and 35 transitions. [2022-04-07 18:22:19,066 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 18:22:19,067 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-07 18:22:19,067 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:22:19,068 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 18:22:19,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 39 transitions. [2022-04-07 18:22:19,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 18:22:19,095 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 39 transitions. [2022-04-07 18:22:19,095 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 39 transitions. [2022-04-07 18:22:19,173 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-07 18:22:19,183 INFO L225 Difference]: With dead ends: 32 [2022-04-07 18:22:19,184 INFO L226 Difference]: Without dead ends: 27 [2022-04-07 18:22:19,185 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 18:22:19,188 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 20 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 6 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 34 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 6 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 18:22:19,189 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 34 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 6 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 18:22:19,203 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-07 18:22:19,218 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-07 18:22:19,218 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:22:19,220 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 18:22:19,222 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 18:22:19,224 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 18:22:19,238 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:19,239 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-07 18:22:19,239 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-07 18:22:19,239 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:22:19,239 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:22:19,240 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-07 18:22:19,240 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-07 18:22:19,243 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:19,243 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-07 18:22:19,243 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-07 18:22:19,244 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:22:19,244 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:22:19,244 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:22:19,244 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:22:19,244 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 18 states have internal predecessors, (20), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 18:22:19,246 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-04-07 18:22:19,250 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 23 [2022-04-07 18:22:19,250 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:22:19,250 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-04-07 18:22:19,252 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 18:22:19,253 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-07 18:22:19,254 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-07 18:22:19,254 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:22:19,255 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:22:19,255 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 18:22:19,255 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:22:19,256 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:22:19,256 INFO L85 PathProgramCache]: Analyzing trace with hash -1863481077, now seen corresponding path program 1 times [2022-04-07 18:22:19,256 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:22:19,256 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1715749730] [2022-04-07 18:22:19,256 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:22:19,257 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:22:19,311 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:22:19,311 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [745448578] [2022-04-07 18:22:19,311 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:22:19,312 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:22:19,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:22:19,319 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:22:19,365 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 18:22:19,389 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:19,396 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-07 18:22:19,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:19,417 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:22:19,652 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-07 18:22:19,652 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-07 18:22:19,653 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-07 18:22:19,654 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-07 18:22:19,654 INFO L272 TraceCheckUtils]: 4: Hoare triple {164#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-07 18:22:19,654 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-07 18:22:19,654 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-07 18:22:19,655 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-07 18:22:19,655 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-07 18:22:19,655 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-07 18:22:19,655 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-07 18:22:19,656 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-07 18:22:19,657 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-07 18:22:19,657 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-07 18:22:19,660 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-07 18:22:19,660 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-07 18:22:19,661 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-07 18:22:19,662 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-07 18:22:19,664 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-07 18:22:19,665 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-07 18:22:19,666 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-07 18:22:19,667 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-07 18:22:19,667 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-07 18:22:19,667 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-07 18:22:19,668 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 18:22:19,668 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:22:19,669 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1715749730] [2022-04-07 18:22:19,669 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:22:19,669 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [745448578] [2022-04-07 18:22:19,672 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [745448578] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:22:19,672 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:22:19,672 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-07 18:22:19,673 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [299608490] [2022-04-07 18:22:19,674 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:22:19,675 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-07 18:22:19,675 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:22:19,675 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-07 18:22:19,697 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:22:19,698 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 18:22:19,698 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:22:19,699 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 18:22:19,699 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-07 18:22:19,700 INFO L87 Difference]: Start difference. First operand 27 states and 30 transitions. Second operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-07 18:22:19,948 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:19,949 INFO L93 Difference]: Finished difference Result 37 states and 42 transitions. [2022-04-07 18:22:19,949 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 18:22:19,949 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-07 18:22:19,949 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:22:19,950 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-07 18:22:19,964 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-07 18:22:19,964 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-07 18:22:19,970 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-07 18:22:19,970 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 43 transitions. [2022-04-07 18:22:20,010 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-07 18:22:20,014 INFO L225 Difference]: With dead ends: 37 [2022-04-07 18:22:20,014 INFO L226 Difference]: Without dead ends: 35 [2022-04-07 18:22:20,014 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-07 18:22:20,016 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-07 18:22:20,017 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-07 18:22:20,019 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-07 18:22:20,024 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 34. [2022-04-07 18:22:20,025 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:22:20,025 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 18:22:20,026 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 18:22:20,029 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 18:22:20,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:20,033 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-07 18:22:20,033 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-07 18:22:20,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:22:20,034 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:22:20,035 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 35 states. [2022-04-07 18:22:20,035 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 35 states. [2022-04-07 18:22:20,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:20,038 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-07 18:22:20,038 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-07 18:22:20,038 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:22:20,038 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:22:20,039 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:22:20,039 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:22:20,039 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 18:22:20,041 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 37 transitions. [2022-04-07 18:22:20,042 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 37 transitions. Word has length 23 [2022-04-07 18:22:20,042 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:22:20,042 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 37 transitions. [2022-04-07 18:22:20,042 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-07 18:22:20,042 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 37 transitions. [2022-04-07 18:22:20,043 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-07 18:22:20,043 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:22:20,044 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:22:20,070 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-07 18:22:20,263 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:22:20,264 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:22:20,264 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:22:20,265 INFO L85 PathProgramCache]: Analyzing trace with hash -646008129, now seen corresponding path program 1 times [2022-04-07 18:22:20,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:22:20,265 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [372962501] [2022-04-07 18:22:20,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:22:20,265 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:22:20,283 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:22:20,284 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1406554182] [2022-04-07 18:22:20,284 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:22:20,284 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:22:20,284 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:22:20,285 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:22:20,303 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-07 18:22:20,346 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:20,347 INFO L263 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-07 18:22:20,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:20,365 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:22:20,604 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-07 18:22:20,604 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-07 18:22:20,605 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-07 18:22:20,605 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-07 18:22:20,605 INFO L272 TraceCheckUtils]: 4: Hoare triple {383#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-07 18:22:20,605 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-07 18:22:20,606 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-07 18:22:20,606 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-07 18:22:20,606 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-07 18:22:20,606 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-07 18:22:20,607 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-07 18:22:20,607 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-07 18:22:20,607 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-07 18:22:20,607 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-07 18:22:20,607 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-07 18:22:20,608 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-07 18:22:20,608 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-07 18:22:20,609 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-07 18:22:20,609 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-07 18:22:20,610 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-07 18:22:20,610 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-07 18:22:20,610 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-07 18:22:20,610 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-07 18:22:20,611 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-07 18:22:20,612 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-07 18:22:20,613 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-07 18:22:20,614 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-07 18:22:20,615 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-07 18:22:20,616 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-07 18:22:20,616 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-07 18:22:20,617 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-07 18:22:20,617 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-07 18:22:20,618 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-07 18:22:20,618 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:22:20,826 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-07 18:22:20,827 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-07 18:22:20,827 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-07 18:22:20,829 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-07 18:22:20,829 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-07 18:22:20,831 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-07 18:22:20,832 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-07 18:22:20,832 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-07 18:22:20,833 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-07 18:22:20,834 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-07 18:22:20,834 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-07 18:22:20,834 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-07 18:22:20,834 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-07 18:22:20,837 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-07 18:22:20,837 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-07 18:22:20,837 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-07 18:22:20,838 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-07 18:22:20,838 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-07 18:22:20,838 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-07 18:22:20,838 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-07 18:22:20,839 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-07 18:22:20,839 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-07 18:22:20,839 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-07 18:22:20,839 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-07 18:22:20,840 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-07 18:22:20,840 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-07 18:22:20,840 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-07 18:22:20,840 INFO L272 TraceCheckUtils]: 4: Hoare triple {383#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#true} is VALID [2022-04-07 18:22:20,841 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-07 18:22:20,841 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-07 18:22:20,841 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-07 18:22:20,841 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-07 18:22:20,842 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-07 18:22:20,842 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:22:20,842 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [372962501] [2022-04-07 18:22:20,842 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:22:20,842 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1406554182] [2022-04-07 18:22:20,842 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1406554182] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:22:20,843 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:22:20,843 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-07 18:22:20,843 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [8272984] [2022-04-07 18:22:20,843 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:22:20,844 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 32 [2022-04-07 18:22:20,844 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:22:20,844 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 18:22:20,882 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:22:20,882 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-07 18:22:20,883 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:22:20,883 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-07 18:22:20,883 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-07 18:22:20,884 INFO L87 Difference]: Start difference. First operand 34 states and 37 transitions. Second operand has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 18:22:21,453 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:21,453 INFO L93 Difference]: Finished difference Result 46 states and 52 transitions. [2022-04-07 18:22:21,453 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-07 18:22:21,453 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 32 [2022-04-07 18:22:21,454 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:22:21,454 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 18:22:21,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 50 transitions. [2022-04-07 18:22:21,457 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 18:22:21,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 50 transitions. [2022-04-07 18:22:21,459 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 50 transitions. [2022-04-07 18:22:21,523 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-07 18:22:21,524 INFO L225 Difference]: With dead ends: 46 [2022-04-07 18:22:21,524 INFO L226 Difference]: Without dead ends: 42 [2022-04-07 18:22:21,524 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 52 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=44, Invalid=166, Unknown=0, NotChecked=0, Total=210 [2022-04-07 18:22:21,525 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.3s IncrementalHoareTripleChecker+Time [2022-04-07 18:22:21,526 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.3s Time] [2022-04-07 18:22:21,526 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-04-07 18:22:21,529 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2022-04-07 18:22:21,529 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:22:21,529 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 18:22:21,530 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 18:22:21,530 INFO L87 Difference]: Start difference. First operand 42 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 18:22:21,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:21,539 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-07 18:22:21,540 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-07 18:22:21,540 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:22:21,540 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:22:21,540 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 42 states. [2022-04-07 18:22:21,540 INFO L87 Difference]: Start difference. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 42 states. [2022-04-07 18:22:21,542 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:21,542 INFO L93 Difference]: Finished difference Result 42 states and 47 transitions. [2022-04-07 18:22:21,542 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 47 transitions. [2022-04-07 18:22:21,542 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:22:21,542 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:22:21,543 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:22:21,543 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:22:21,543 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 18:22:21,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-07 18:22:21,544 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 32 [2022-04-07 18:22:21,545 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:22:21,545 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-07 18:22:21,545 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 18:22:21,545 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-07 18:22:21,546 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-07 18:22:21,546 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:22:21,547 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:22:21,565 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-07 18:22:21,755 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-07 18:22:21,756 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:22:21,756 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:22:21,756 INFO L85 PathProgramCache]: Analyzing trace with hash -1661983408, now seen corresponding path program 1 times [2022-04-07 18:22:21,756 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:22:21,756 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [397655391] [2022-04-07 18:22:21,756 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:22:21,756 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:22:21,783 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:22:21,784 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1470905605] [2022-04-07 18:22:21,784 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:22:21,784 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:22:21,784 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:22:21,800 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:22:21,807 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-07 18:22:21,862 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:21,863 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-07 18:22:21,883 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:21,884 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:22:22,387 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-07 18:22:22,387 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-07 18:22:22,388 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-07 18:22:22,388 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-07 18:22:22,388 INFO L272 TraceCheckUtils]: 4: Hoare triple {764#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-07 18:22:22,388 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-07 18:22:22,388 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-07 18:22:22,388 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-07 18:22:22,389 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-07 18:22:22,389 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-07 18:22:22,389 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-07 18:22:22,389 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-07 18:22:22,389 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-07 18:22:22,389 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-07 18:22:22,390 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-07 18:22:22,390 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-07 18:22:22,390 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-07 18:22:22,390 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-07 18:22:22,391 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-07 18:22:22,391 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-07 18:22:22,391 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-07 18:22:22,392 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-07 18:22:22,392 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-07 18:22:22,392 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-07 18:22:22,393 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-07 18:22:22,394 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-07 18:22:22,394 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-07 18:22:22,395 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-07 18:22:22,395 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-07 18:22:22,395 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-07 18:22:22,397 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-07 18:22:22,397 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-07 18:22:22,398 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-07 18:22:22,399 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-07 18:22:22,401 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-07 18:22:22,402 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-07 18:22:22,402 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-07 18:22:22,403 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-07 18:22:22,403 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-07 18:22:22,403 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-07 18:22:22,403 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:22:23,213 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-07 18:22:23,214 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-07 18:22:23,215 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-07 18:22:23,216 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-07 18:22:23,216 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-07 18:22:23,217 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-07 18:22:23,218 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-07 18:22:23,219 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-07 18:22:23,219 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-07 18:22:23,220 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-07 18:22:23,220 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-07 18:22:23,221 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-07 18:22:23,223 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-07 18:22:23,225 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-07 18:22:23,226 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-07 18:22:23,227 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-07 18:22:23,227 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-07 18:22:23,227 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-07 18:22:23,227 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-07 18:22:23,227 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-07 18:22:23,227 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-07 18:22:23,228 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-07 18:22:23,228 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-07 18:22:23,228 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-07 18:22:23,228 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-07 18:22:23,228 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-07 18:22:23,228 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-07 18:22:23,229 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-07 18:22:23,229 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-07 18:22:23,229 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-07 18:22:23,229 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-07 18:22:23,229 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-07 18:22:23,229 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-07 18:22:23,229 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-07 18:22:23,230 INFO L272 TraceCheckUtils]: 4: Hoare triple {764#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {764#true} is VALID [2022-04-07 18:22:23,230 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-07 18:22:23,230 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-07 18:22:23,230 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-07 18:22:23,230 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-07 18:22:23,231 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 9 proven. 1 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-07 18:22:23,231 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:22:23,231 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [397655391] [2022-04-07 18:22:23,231 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:22:23,231 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1470905605] [2022-04-07 18:22:23,231 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1470905605] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:22:23,231 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:22:23,232 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 22 [2022-04-07 18:22:23,232 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [478680852] [2022-04-07 18:22:23,232 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:22:23,232 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 39 [2022-04-07 18:22:23,233 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:22:23,233 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 18:22:23,291 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:22:23,292 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-07 18:22:23,292 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:22:23,292 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-07 18:22:23,293 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-07 18:22:23,293 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 18:22:24,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:24,646 INFO L93 Difference]: Finished difference Result 58 states and 66 transitions. [2022-04-07 18:22:24,647 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-07 18:22:24,647 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 39 [2022-04-07 18:22:24,647 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:22:24,647 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 18:22:24,650 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-07 18:22:24,650 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 18:22:24,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-07 18:22:24,652 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 61 transitions. [2022-04-07 18:22:24,729 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-07 18:22:24,730 INFO L225 Difference]: With dead ends: 58 [2022-04-07 18:22:24,730 INFO L226 Difference]: Without dead ends: 52 [2022-04-07 18:22:24,731 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-07 18:22:24,732 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-07 18:22:24,732 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-07 18:22:24,733 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-07 18:22:24,736 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 41. [2022-04-07 18:22:24,736 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:22:24,736 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 18:22:24,737 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 18:22:24,737 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 18:22:24,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:24,739 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2022-04-07 18:22:24,739 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2022-04-07 18:22:24,740 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:22:24,740 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:22:24,740 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 52 states. [2022-04-07 18:22:24,741 INFO L87 Difference]: Start difference. First operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 52 states. [2022-04-07 18:22:24,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:22:24,743 INFO L93 Difference]: Finished difference Result 52 states and 59 transitions. [2022-04-07 18:22:24,743 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 59 transitions. [2022-04-07 18:22:24,743 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:22:24,744 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:22:24,744 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:22:24,744 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:22:24,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 28 states have (on average 1.1071428571428572) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 18:22:24,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-07 18:22:24,745 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 39 [2022-04-07 18:22:24,746 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:22:24,746 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-07 18:22:24,746 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 19 states have internal predecessors, (34), 6 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 18:22:24,746 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-07 18:22:24,747 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-07 18:22:24,747 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:22:24,747 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:22:24,771 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-07 18:22:24,947 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:22:24,948 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:22:24,948 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:22:24,948 INFO L85 PathProgramCache]: Analyzing trace with hash -1381917339, now seen corresponding path program 1 times [2022-04-07 18:22:24,949 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:22:24,949 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1105668561] [2022-04-07 18:22:24,949 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:22:24,949 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:22:24,968 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:22:24,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1093540442] [2022-04-07 18:22:24,968 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:22:24,968 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:22:24,969 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:22:24,969 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:22:24,995 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-07 18:22:25,023 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:25,024 INFO L263 TraceCheckSpWp]: Trace formula consists of 136 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-07 18:22:25,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:22:25,038 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:22:38,721 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:22:47,009 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:23:00,392 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-07 18:23:00,392 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-07 18:23:00,393 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-07 18:23:00,393 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-07 18:23:00,393 INFO L272 TraceCheckUtils]: 4: Hoare triple {1252#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-07 18:23:00,393 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-07 18:23:00,393 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-07 18:23:00,393 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-07 18:23:00,393 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-07 18:23:00,393 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-07 18:23:00,394 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-07 18:23:00,394 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-07 18:23:00,394 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-07 18:23:00,394 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-07 18:23:00,394 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-07 18:23:00,394 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-07 18:23:00,394 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-07 18:23:00,395 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-07 18:23:00,395 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-07 18:23:00,395 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-07 18:23:00,395 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-07 18:23:00,396 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-07 18:23:00,396 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-07 18:23:00,397 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-07 18:23:00,397 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-07 18:23:00,397 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-07 18:23:00,398 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-07 18:23:00,398 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-07 18:23:00,398 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-07 18:23:00,399 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-07 18:23:00,399 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-07 18:23:00,400 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-07 18:23:00,401 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-07 18:23:00,401 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-07 18:23:00,401 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-07 18:23:00,402 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-07 18:23:00,402 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-07 18:23:00,402 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-07 18:23:00,403 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-07 18:23:00,403 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-07 18:23:00,404 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-07 18:23:00,405 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-07 18:23:00,406 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-07 18:23:02,408 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-07 18:23:02,410 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-07 18:23:02,411 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-07 18:23:02,412 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-07 18:23:02,412 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-07 18:23:02,412 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 14 proven. 2 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2022-04-07 18:23:02,412 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:23:14,183 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-07 18:23:14,183 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-07 18:23:14,184 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-07 18:23:14,185 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-07 18:23:14,186 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-07 18:23:14,186 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-07 18:23:14,188 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-07 18:23:14,188 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-07 18:23:14,189 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-07 18:23:14,189 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-07 18:23:14,189 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-07 18:23:14,190 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-07 18:23:14,190 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-07 18:23:14,191 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-07 18:23:14,191 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-07 18:23:14,192 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-07 18:23:14,192 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-07 18:23:14,192 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-07 18:23:14,192 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-07 18:23:14,192 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-07 18:23:14,193 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-07 18:23:14,193 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-07 18:23:14,193 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-07 18:23:14,194 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-07 18:23:14,195 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-07 18:23:14,195 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-07 18:23:14,195 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-07 18:23:14,195 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-07 18:23:14,195 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-07 18:23:14,195 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-07 18:23:14,196 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-07 18:23:14,196 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-07 18:23:14,196 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-07 18:23:14,196 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-07 18:23:14,196 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-07 18:23:14,196 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-07 18:23:14,196 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-07 18:23:14,197 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-07 18:23:14,197 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-07 18:23:14,197 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-07 18:23:14,197 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-07 18:23:14,197 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-07 18:23:14,197 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-07 18:23:14,197 INFO L272 TraceCheckUtils]: 4: Hoare triple {1252#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1252#true} is VALID [2022-04-07 18:23:14,197 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-07 18:23:14,197 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-07 18:23:14,198 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-07 18:23:14,198 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-07 18:23:14,198 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 11 proven. 5 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2022-04-07 18:23:14,198 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:23:14,198 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1105668561] [2022-04-07 18:23:14,198 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:23:14,199 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1093540442] [2022-04-07 18:23:14,199 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1093540442] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:23:14,199 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:23:14,199 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-07 18:23:14,199 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [560729732] [2022-04-07 18:23:14,199 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:23:14,200 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 48 [2022-04-07 18:23:14,201 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:23:14,202 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 18:23:16,236 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 44 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 18:23:16,236 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-07 18:23:16,237 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:23:16,237 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-07 18:23:16,237 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-07 18:23:16,237 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 18:23:18,597 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 18:23:22,827 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 18:23:24,854 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 18:23:27,082 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 18:23:29,196 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 18:23:31,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:23:31,710 INFO L93 Difference]: Finished difference Result 54 states and 61 transitions. [2022-04-07 18:23:31,710 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 18:23:31,710 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 48 [2022-04-07 18:23:31,711 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:23:31,711 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 18:23:31,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 47 transitions. [2022-04-07 18:23:31,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 18:23:31,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 47 transitions. [2022-04-07 18:23:31,714 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 47 transitions. [2022-04-07 18:23:33,754 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-07 18:23:33,755 INFO L225 Difference]: With dead ends: 54 [2022-04-07 18:23:33,755 INFO L226 Difference]: Without dead ends: 50 [2022-04-07 18:23:33,756 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 81 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 4.7s TimeCoverageRelationStatistics Valid=66, Invalid=238, Unknown=2, NotChecked=0, Total=306 [2022-04-07 18:23:33,756 INFO L913 BasicCegarLoop]: 19 mSDtfsCounter, 26 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 137 mSolverCounterSat, 13 mSolverCounterUnsat, 5 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 10.4s 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.4s IncrementalHoareTripleChecker+Time [2022-04-07 18:23:33,757 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.4s Time] [2022-04-07 18:23:33,757 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-07 18:23:33,760 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 44. [2022-04-07 18:23:33,760 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:23:33,760 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 18:23:33,760 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 18:23:33,761 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 18:23:33,763 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:23:33,763 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-07 18:23:33,763 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-07 18:23:33,763 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:23:33,763 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:23:33,764 INFO L74 IsIncluded]: Start isIncluded. First operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-07 18:23:33,764 INFO L87 Difference]: Start difference. First operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-07 18:23:33,766 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:23:33,766 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-07 18:23:33,766 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-07 18:23:33,766 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:23:33,766 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:23:33,766 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:23:33,766 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:23:33,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 18:23:33,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 49 transitions. [2022-04-07 18:23:33,768 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 49 transitions. Word has length 48 [2022-04-07 18:23:33,768 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:23:33,769 INFO L478 AbstractCegarLoop]: Abstraction has 44 states and 49 transitions. [2022-04-07 18:23:33,769 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 10 states have (on average 2.9) internal successors, (29), 13 states have internal predecessors, (29), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-07 18:23:33,769 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 49 transitions. [2022-04-07 18:23:33,770 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-07 18:23:33,770 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:23:33,770 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:23:33,797 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-07 18:23:33,970 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:23:33,970 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:23:33,971 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:23:33,971 INFO L85 PathProgramCache]: Analyzing trace with hash -137152858, now seen corresponding path program 1 times [2022-04-07 18:23:33,971 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:23:33,971 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [605683733] [2022-04-07 18:23:33,971 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:23:33,972 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:23:33,988 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:23:33,989 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1244458113] [2022-04-07 18:23:33,989 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:23:33,989 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:23:33,989 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:23:33,993 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:23:33,999 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-07 18:23:34,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:23:34,042 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 18:23:34,052 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:23:34,053 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:23:43,195 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-07 18:23:43,196 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-07 18:23:43,196 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-07 18:23:43,196 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-07 18:23:43,196 INFO L272 TraceCheckUtils]: 4: Hoare triple {1759#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-07 18:23:43,196 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-07 18:23:43,196 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-07 18:23:43,196 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-07 18:23:43,197 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-07 18:23:43,197 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-07 18:23:43,197 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-07 18:23:43,197 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-07 18:23:43,197 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-07 18:23:43,197 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-07 18:23:43,197 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-07 18:23:43,197 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-07 18:23:43,198 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-07 18:23:43,198 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-07 18:23:43,199 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-07 18:23:43,199 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-07 18:23:43,199 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-07 18:23:43,199 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-07 18:23:43,199 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-07 18:23:43,200 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-07 18:23:43,200 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-07 18:23:43,201 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-07 18:23:43,202 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-07 18:23:43,203 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-07 18:23:43,203 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-07 18:23:43,203 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-07 18:23:43,203 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-07 18:23:43,203 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-07 18:23:43,204 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-07 18:23:43,204 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-07 18:23:43,207 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-07 18:23:43,207 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-07 18:23:43,208 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-07 18:23:43,208 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-07 18:23:43,208 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-07 18:23:43,208 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-07 18:23:43,208 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-07 18:23:43,209 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-07 18:23:43,209 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-07 18:23:43,209 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-07 18:23:43,210 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-07 18:23:43,210 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-07 18:23:43,210 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-07 18:23:43,210 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-07 18:23:43,210 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 6 proven. 11 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-07 18:23:43,210 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:23:43,766 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-07 18:23:43,766 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-07 18:23:43,766 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-07 18:23:43,766 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-07 18:23:43,766 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-07 18:23:43,767 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-07 18:23:43,768 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-07 18:23:43,768 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-07 18:23:43,768 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-07 18:23:43,768 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-07 18:23:43,768 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-07 18:23:43,768 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-07 18:23:43,769 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-07 18:23:43,770 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-07 18:23:43,770 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-07 18:23:43,771 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-07 18:23:43,771 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-07 18:23:43,771 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-07 18:23:43,771 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-07 18:23:43,771 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-07 18:23:43,771 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-07 18:23:43,772 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-07 18:23:43,773 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-07 18:23:43,773 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-07 18:23:43,774 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-07 18:23:43,774 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-07 18:23:43,774 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-07 18:23:43,774 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-07 18:23:43,774 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-07 18:23:43,778 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-07 18:23:43,779 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-07 18:23:43,779 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-07 18:23:43,779 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-07 18:23:43,779 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-07 18:23:43,779 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-07 18:23:43,779 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-07 18:23:43,780 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-07 18:23:43,780 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-07 18:23:43,780 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-07 18:23:43,780 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-07 18:23:43,780 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-07 18:23:43,780 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-07 18:23:43,780 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-07 18:23:43,780 INFO L272 TraceCheckUtils]: 4: Hoare triple {1759#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1759#true} is VALID [2022-04-07 18:23:43,781 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-07 18:23:43,781 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-07 18:23:43,781 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-07 18:23:43,781 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-07 18:23:43,781 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 6 proven. 11 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-07 18:23:43,781 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:23:43,781 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [605683733] [2022-04-07 18:23:43,781 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:23:43,781 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1244458113] [2022-04-07 18:23:43,782 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1244458113] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:23:43,782 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:23:43,782 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-07 18:23:43,782 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1980398405] [2022-04-07 18:23:43,782 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:23:43,783 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) Word has length 48 [2022-04-07 18:23:43,783 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:23:43,783 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-07 18:23:43,829 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:23:43,829 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-07 18:23:43,829 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:23:43,830 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-07 18:23:43,830 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-07 18:23:43,830 INFO L87 Difference]: Start difference. First operand 44 states and 49 transitions. Second operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-07 18:23:45,267 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:23:45,267 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-07 18:23:45,267 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 18:23:45,267 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) Word has length 48 [2022-04-07 18:23:45,268 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:23:45,268 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-07 18:23:45,269 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 53 transitions. [2022-04-07 18:23:45,270 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-07 18:23:45,271 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 53 transitions. [2022-04-07 18:23:45,271 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 53 transitions. [2022-04-07 18:23:45,318 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-07 18:23:45,319 INFO L225 Difference]: With dead ends: 59 [2022-04-07 18:23:45,319 INFO L226 Difference]: Without dead ends: 59 [2022-04-07 18:23:45,319 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 85 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=59, Invalid=181, Unknown=0, NotChecked=0, Total=240 [2022-04-07 18:23:45,320 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 5 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 171 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s 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.4s IncrementalHoareTripleChecker+Time [2022-04-07 18:23:45,320 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.4s Time] [2022-04-07 18:23:45,321 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-04-07 18:23:45,324 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 51. [2022-04-07 18:23:45,324 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:23:45,324 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 18:23:45,325 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 18:23:45,325 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 18:23:45,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:23:45,327 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-07 18:23:45,327 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-07 18:23:45,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:23:45,328 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:23:45,328 INFO L74 IsIncluded]: Start isIncluded. First operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 59 states. [2022-04-07 18:23:45,328 INFO L87 Difference]: Start difference. First operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 59 states. [2022-04-07 18:23:45,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:23:45,330 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-07 18:23:45,330 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-07 18:23:45,331 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:23:45,331 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:23:45,331 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:23:45,331 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:23:45,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 36 states have internal predecessors, (41), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 18:23:45,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 59 transitions. [2022-04-07 18:23:45,333 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 59 transitions. Word has length 48 [2022-04-07 18:23:45,333 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:23:45,333 INFO L478 AbstractCegarLoop]: Abstraction has 51 states and 59 transitions. [2022-04-07 18:23:45,333 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 7 states have call predecessors, (9), 7 states have call successors, (9) [2022-04-07 18:23:45,334 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 59 transitions. [2022-04-07 18:23:45,334 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-07 18:23:45,334 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:23:45,335 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:23:45,360 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-07 18:23:45,557 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:23:45,557 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:23:45,558 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:23:45,558 INFO L85 PathProgramCache]: Analyzing trace with hash -545218702, now seen corresponding path program 2 times [2022-04-07 18:23:45,558 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:23:45,558 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1866756935] [2022-04-07 18:23:45,558 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:23:45,558 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:23:45,570 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:23:45,570 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2095426569] [2022-04-07 18:23:45,570 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-07 18:23:45,570 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:23:45,570 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:23:45,571 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:23:45,580 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-07 18:23:45,622 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-07 18:23:45,622 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 18:23:45,623 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 18:23:45,634 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:23:45,635 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:23:48,256 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-07 18:23:48,256 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-07 18:23:48,256 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-07 18:23:48,256 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-07 18:23:48,256 INFO L272 TraceCheckUtils]: 4: Hoare triple {2294#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-07 18:23:48,257 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-07 18:23:48,257 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-07 18:23:48,257 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-07 18:23:48,257 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-07 18:23:48,257 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-07 18:23:48,257 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-07 18:23:48,257 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-07 18:23:48,257 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-07 18:23:48,257 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-07 18:23:48,258 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-07 18:23:48,258 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-07 18:23:48,258 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-07 18:23:48,258 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-07 18:23:48,259 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-07 18:23:48,259 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-07 18:23:48,259 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-07 18:23:48,259 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-07 18:23:48,259 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-07 18:23:48,260 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-07 18:23:48,261 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-07 18:23:48,262 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-07 18:23:48,263 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-07 18:23:48,263 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-07 18:23:48,263 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-07 18:23:48,263 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-07 18:23:48,263 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-07 18:23:48,263 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-07 18:23:48,264 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-07 18:23:48,264 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-07 18:23:48,265 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-07 18:23:48,266 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-07 18:23:48,266 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-07 18:23:48,266 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-07 18:23:48,266 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-07 18:23:48,266 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-07 18:23:48,266 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-07 18:23:48,267 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-07 18:23:48,267 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-07 18:23:48,268 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-07 18:23:48,268 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-07 18:23:48,269 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-07 18:23:48,269 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-07 18:23:48,269 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-07 18:23:48,269 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-07 18:23:48,269 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-07 18:23:48,270 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-07 18:23:48,270 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-07 18:23:48,270 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-07 18:23:48,270 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-07 18:23:48,270 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-07 18:23:48,271 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-07 18:23:48,271 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-07 18:23:48,271 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 8 proven. 24 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-07 18:23:48,271 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:23:48,897 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-07 18:23:48,897 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-07 18:23:48,897 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-07 18:23:48,897 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-07 18:23:48,897 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-07 18:23:48,898 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-07 18:23:48,898 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-07 18:23:48,898 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-07 18:23:48,898 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-07 18:23:48,898 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-07 18:23:48,899 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-07 18:23:48,899 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-07 18:23:48,900 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-07 18:23:48,900 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-07 18:23:48,901 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-07 18:23:48,902 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-07 18:23:48,902 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-07 18:23:48,902 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-07 18:23:48,902 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-07 18:23:48,902 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-07 18:23:48,903 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-07 18:23:48,903 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-07 18:23:48,904 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-07 18:23:48,904 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-07 18:23:48,905 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-07 18:23:48,905 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-07 18:23:48,905 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-07 18:23:48,905 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-07 18:23:48,906 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-07 18:23:48,906 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-07 18:23:48,907 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-07 18:23:48,908 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-07 18:23:48,908 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-07 18:23:48,909 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-07 18:23:48,909 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-07 18:23:48,909 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-07 18:23:48,909 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-07 18:23:48,909 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-07 18:23:48,909 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-07 18:23:48,910 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-07 18:23:48,910 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-07 18:23:48,910 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-07 18:23:48,910 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-07 18:23:48,910 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-07 18:23:48,910 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-07 18:23:48,910 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-07 18:23:48,911 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-07 18:23:48,911 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-07 18:23:48,911 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-07 18:23:48,911 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-07 18:23:48,911 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-07 18:23:48,911 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-07 18:23:48,911 INFO L272 TraceCheckUtils]: 4: Hoare triple {2294#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#true} is VALID [2022-04-07 18:23:48,911 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-07 18:23:48,912 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-07 18:23:48,912 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-07 18:23:48,912 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-07 18:23:48,912 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 8 proven. 24 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-07 18:23:48,912 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:23:48,912 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1866756935] [2022-04-07 18:23:48,912 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:23:48,913 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2095426569] [2022-04-07 18:23:48,913 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2095426569] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:23:48,913 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:23:48,913 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-07 18:23:48,913 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1061520540] [2022-04-07 18:23:48,913 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:23:48,914 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) Word has length 57 [2022-04-07 18:23:48,914 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:23:48,914 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-07 18:23:48,966 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:23:48,967 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-07 18:23:48,967 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:23:48,967 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-07 18:23:48,967 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-04-07 18:23:48,967 INFO L87 Difference]: Start difference. First operand 51 states and 59 transitions. Second operand has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-07 18:23:50,493 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:23:50,494 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-07 18:23:50,494 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 18:23:50,494 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) Word has length 57 [2022-04-07 18:23:50,494 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:23:50,495 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-07 18:23:50,496 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 59 transitions. [2022-04-07 18:23:50,497 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-07 18:23:50,498 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 59 transitions. [2022-04-07 18:23:50,498 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 59 transitions. [2022-04-07 18:23:50,564 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-07 18:23:50,565 INFO L225 Difference]: With dead ends: 72 [2022-04-07 18:23:50,565 INFO L226 Difference]: Without dead ends: 72 [2022-04-07 18:23:50,566 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 101 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=64, Invalid=208, Unknown=0, NotChecked=0, Total=272 [2022-04-07 18:23:50,566 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 10 mSDsluCounter, 124 mSDsCounter, 0 mSdLazyCounter, 186 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s 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.5s IncrementalHoareTripleChecker+Time [2022-04-07 18:23:50,566 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.5s Time] [2022-04-07 18:23:50,567 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states. [2022-04-07 18:23:50,571 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 56. [2022-04-07 18:23:50,571 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:23:50,572 INFO L82 GeneralOperation]: Start isEquivalent. First operand 72 states. Second operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 18:23:50,572 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 18:23:50,572 INFO L87 Difference]: Start difference. First operand 72 states. Second operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 18:23:50,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:23:50,575 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-07 18:23:50,576 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 87 transitions. [2022-04-07 18:23:50,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:23:50,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:23:50,576 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 72 states. [2022-04-07 18:23:50,577 INFO L87 Difference]: Start difference. First operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 72 states. [2022-04-07 18:23:50,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:23:50,580 INFO L93 Difference]: Finished difference Result 72 states and 87 transitions. [2022-04-07 18:23:50,580 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 87 transitions. [2022-04-07 18:23:50,580 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:23:50,580 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:23:50,580 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:23:50,580 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:23:50,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 40 states have (on average 1.15) internal successors, (46), 40 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 18:23:50,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 66 transitions. [2022-04-07 18:23:50,582 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 66 transitions. Word has length 57 [2022-04-07 18:23:50,583 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:23:50,583 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 66 transitions. [2022-04-07 18:23:50,583 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 9 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-07 18:23:50,583 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 66 transitions. [2022-04-07 18:23:50,584 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-07 18:23:50,584 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:23:50,584 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:23:50,604 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-07 18:23:50,799 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:23:50,800 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:23:50,800 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:23:50,800 INFO L85 PathProgramCache]: Analyzing trace with hash 494880272, now seen corresponding path program 3 times [2022-04-07 18:23:50,800 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:23:50,800 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [859025584] [2022-04-07 18:23:50,800 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:23:50,800 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:23:50,821 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:23:50,822 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [207152710] [2022-04-07 18:23:50,822 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-07 18:23:50,822 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:23:50,822 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:23:50,823 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:23:50,824 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-07 18:23:51,106 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-07 18:23:51,106 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 18:23:51,108 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-07 18:23:51,128 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:23:51,129 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:24:12,426 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:24:22,450 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:24:28,471 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:25:42,957 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-07 18:25:42,957 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-07 18:25:42,957 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-07 18:25:42,958 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-07 18:25:42,958 INFO L272 TraceCheckUtils]: 4: Hoare triple {2927#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-07 18:25:42,958 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-07 18:25:42,958 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-07 18:25:42,958 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-07 18:25:42,958 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-07 18:25:42,959 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-07 18:25:42,959 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-07 18:25:42,960 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-07 18:25:42,960 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-07 18:25:42,960 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-07 18:25:42,960 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-07 18:25:42,961 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-07 18:25:42,961 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-07 18:25:42,962 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-07 18:25:42,962 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-07 18:25:42,962 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-07 18:25:42,962 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-07 18:25:42,962 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-07 18:25:42,963 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-07 18:25:42,963 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-07 18:25:42,964 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-07 18:25:42,964 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-07 18:25:42,964 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-07 18:25:42,965 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-07 18:25:42,965 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-07 18:25:42,965 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-07 18:25:42,965 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-07 18:25:42,965 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-07 18:25:42,966 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-07 18:25:42,966 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-07 18:25:42,966 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-07 18:25:42,967 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-07 18:25:42,967 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-07 18:25:42,967 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-07 18:25:42,967 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-07 18:25:42,967 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-07 18:25:42,968 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-07 18:25:42,968 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-07 18:25:42,968 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-07 18:25:42,969 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-07 18:25:42,970 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-07 18:25:42,971 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-07 18:25:42,971 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-07 18:25:42,971 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-07 18:25:42,972 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-07 18:25:42,972 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-07 18:25:42,974 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-07 18:25:42,974 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-07 18:25:43,537 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-07 18:25:43,548 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-07 18:25:43,549 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-07 18:25:43,549 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-07 18:25:43,549 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-07 18:25:43,550 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 29 proven. 1 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-07 18:25:43,550 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:25:51,898 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:25:56,662 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:26:38,138 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-07 18:26:38,138 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-07 18:26:38,139 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-07 18:26:38,140 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-07 18:26:38,141 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-07 18:26:38,141 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-07 18:26:38,142 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-07 18:26:38,142 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-07 18:26:38,143 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-07 18:26:38,143 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-07 18:26:38,143 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-07 18:26:40,152 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-07 18:26:40,167 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-07 18:26:42,623 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-07 18:26:42,685 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-07 18:26:42,685 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-07 18:26:42,685 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-07 18:26:42,685 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-07 18:26:42,685 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-07 18:26:42,685 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-07 18:26:42,685 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-07 18:26:42,685 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,686 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-07 18:26:42,687 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-07 18:26:42,687 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-07 18:26:42,687 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-07 18:26:42,687 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-07 18:26:42,687 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-07 18:26:42,687 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-07 18:26:42,687 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-07 18:26:42,687 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-07 18:26:42,687 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-07 18:26:42,687 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-07 18:26:42,687 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-07 18:26:42,687 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-07 18:26:42,688 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-07 18:26:42,688 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-07 18:26:42,688 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-07 18:26:42,688 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-07 18:26:42,688 INFO L272 TraceCheckUtils]: 4: Hoare triple {2927#true} [73] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2927#true} is VALID [2022-04-07 18:26:42,688 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-07 18:26:42,688 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-07 18:26:42,688 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-07 18:26:42,689 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-07 18:26:42,689 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 29 proven. 1 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-07 18:26:42,689 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:26:42,689 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [859025584] [2022-04-07 18:26:42,689 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:26:42,689 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [207152710] [2022-04-07 18:26:42,689 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [207152710] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:26:42,690 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:26:42,690 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13] total 25 [2022-04-07 18:26:42,690 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1533463238] [2022-04-07 18:26:42,690 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:26:42,693 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) Word has length 57 [2022-04-07 18:26:42,693 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:26:42,693 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 18:26:48,305 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 64 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-07 18:26:48,305 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-07 18:26:48,305 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:26:48,305 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-07 18:26:48,306 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=98, Invalid=499, Unknown=3, NotChecked=0, Total=600 [2022-04-07 18:26:48,306 INFO L87 Difference]: Start difference. First operand 56 states and 66 transitions. Second operand has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 18:27:16,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:27:16,041 INFO L93 Difference]: Finished difference Result 60 states and 72 transitions. [2022-04-07 18:27:16,042 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-07 18:27:16,042 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) Word has length 57 [2022-04-07 18:27:16,042 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:27:16,042 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 18:27:16,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 44 transitions. [2022-04-07 18:27:16,044 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 18:27:16,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 44 transitions. [2022-04-07 18:27:16,045 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 44 transitions. [2022-04-07 18:27:18,854 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 43 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 18:27:18,854 INFO L225 Difference]: With dead ends: 60 [2022-04-07 18:27:18,854 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 18:27:18,854 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 89 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 277 ImplicationChecksByTransitivity, 36.2s TimeCoverageRelationStatistics Valid=242, Invalid=1086, Unknown=4, NotChecked=0, Total=1332 [2022-04-07 18:27:18,855 INFO L913 BasicCegarLoop]: 16 mSDtfsCounter, 29 mSDsluCounter, 135 mSDsCounter, 0 mSdLazyCounter, 283 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.7s 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.7s IncrementalHoareTripleChecker+Time [2022-04-07 18:27:18,855 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.7s Time] [2022-04-07 18:27:18,855 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 18:27:18,855 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 18:27:18,856 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:27:18,856 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 18:27:18,856 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 18:27:18,856 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 18:27:18,856 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:27:18,856 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 18:27:18,856 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 18:27:18,856 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:27:18,856 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:27:18,856 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 18:27:18,856 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 18:27:18,857 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:27:18,857 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 18:27:18,857 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 18:27:18,857 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:27:18,857 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:27:18,857 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:27:18,857 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:27:18,857 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 18:27:18,857 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 18:27:18,857 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 57 [2022-04-07 18:27:18,857 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:27:18,858 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 18:27:18,859 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 22 states have internal predecessors, (46), 7 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 18:27:18,859 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 18:27:18,859 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:27:18,864 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 18:27:18,870 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-07 18:27:19,072 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:27:19,074 INFO L719 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1, 1] [2022-04-07 18:27:19,075 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 18:27:19,077 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 06:27:19 BasicIcfg [2022-04-07 18:27:19,077 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 18:27:19,078 INFO L158 Benchmark]: Toolchain (without parser) took 301179.52ms. Allocated memory was 180.4MB in the beginning and 247.5MB in the end (delta: 67.1MB). Free memory was 124.3MB in the beginning and 205.6MB in the end (delta: -81.3MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 18:27:19,078 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 180.4MB. Free memory is still 140.6MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 18:27:19,078 INFO L158 Benchmark]: CACSL2BoogieTranslator took 268.22ms. Allocated memory is still 180.4MB. Free memory was 124.1MB in the beginning and 156.3MB in the end (delta: -32.2MB). Peak memory consumption was 7.3MB. Max. memory is 8.0GB. [2022-04-07 18:27:19,079 INFO L158 Benchmark]: Boogie Preprocessor took 39.67ms. Allocated memory is still 180.4MB. Free memory was 156.3MB in the beginning and 154.8MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 18:27:19,079 INFO L158 Benchmark]: RCFGBuilder took 310.79ms. Allocated memory is still 180.4MB. Free memory was 154.8MB in the beginning and 142.2MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-07 18:27:19,079 INFO L158 Benchmark]: IcfgTransformer took 39.62ms. Allocated memory is still 180.4MB. Free memory was 142.2MB in the beginning and 140.6MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 18:27:19,079 INFO L158 Benchmark]: TraceAbstraction took 300515.22ms. Allocated memory was 180.4MB in the beginning and 247.5MB in the end (delta: 67.1MB). Free memory was 140.1MB in the beginning and 205.6MB in the end (delta: -65.5MB). Peak memory consumption was 2.9MB. Max. memory is 8.0GB. [2022-04-07 18:27:19,080 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.11ms. Allocated memory is still 180.4MB. Free memory is still 140.6MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 268.22ms. Allocated memory is still 180.4MB. Free memory was 124.1MB in the beginning and 156.3MB in the end (delta: -32.2MB). Peak memory consumption was 7.3MB. Max. memory is 8.0GB. * Boogie Preprocessor took 39.67ms. Allocated memory is still 180.4MB. Free memory was 156.3MB in the beginning and 154.8MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 310.79ms. Allocated memory is still 180.4MB. Free memory was 154.8MB in the beginning and 142.2MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 39.62ms. Allocated memory is still 180.4MB. Free memory was 142.2MB in the beginning and 140.6MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 300515.22ms. Allocated memory was 180.4MB in the beginning and 247.5MB in the end (delta: 67.1MB). Free memory was 140.1MB in the beginning and 205.6MB in the end (delta: -65.5MB). Peak memory consumption was 2.9MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 16]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 32 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 300.4s, OverallIterations: 8, TraceHistogramMax: 5, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 53.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 5 mSolverCounterUnknown, 159 SdHoareTripleChecker+Valid, 15.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 150 mSDsluCounter, 991 SdHoareTripleChecker+Invalid, 15.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 109 IncrementalHoareTripleChecker+Unchecked, 798 mSDsCounter, 102 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1214 IncrementalHoareTripleChecker+Invalid, 1430 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 102 mSolverCounterUnsat, 193 mSDtfsCounter, 1214 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 632 GetRequests, 491 SyntacticMatches, 6 SemanticMatches, 135 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 672 ImplicationChecksByTransitivity, 43.0s 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, 236.0s InterpolantComputationTime, 327 NumberOfCodeBlocks, 309 NumberOfCodeBlocksAsserted, 10 NumberOfCheckSat, 594 ConstructedInterpolants, 6 QuantifiedInterpolants, 3378 SizeOfPredicates, 50 NumberOfNonLiveVariables, 854 ConjunctsInSsa, 129 ConjunctsInUnsatCore, 14 InterpolantComputations, 2 PerfectInterpolantSequences, 339/426 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-07 18:27:19,288 WARN L435 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forcibly destroying the process [2022-04-07 18:27:19,327 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...