/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 01:52:16,252 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 01:52:16,254 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 01:52:16,287 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 01:52:16,287 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 01:52:16,288 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 01:52:16,289 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 01:52:16,289 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 01:52:16,290 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 01:52:16,291 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 01:52:16,291 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 01:52:16,292 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 01:52:16,292 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 01:52:16,293 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 01:52:16,293 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 01:52:16,294 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 01:52:16,294 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 01:52:16,295 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 01:52:16,296 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 01:52:16,297 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 01:52:16,298 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 01:52:16,299 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 01:52:16,299 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 01:52:16,300 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 01:52:16,304 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 01:52:16,311 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 01:52:16,312 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 01:52:16,312 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 01:52:16,312 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 01:52:16,313 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 01:52:16,313 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 01:52:16,313 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 01:52:16,314 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 01:52:16,314 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 01:52:16,315 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 01:52:16,319 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 01:52:16,320 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 01:52:16,321 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 01:52:16,321 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 01:52:16,321 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 01:52:16,321 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 01:52:16,323 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 01:52:16,324 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-15 01:52:16,347 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 01:52:16,347 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 01:52:16,348 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-15 01:52:16,348 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-15 01:52:16,349 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-15 01:52:16,349 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-15 01:52:16,349 INFO L138 SettingsManager]: * Use SBE=true [2022-04-15 01:52:16,349 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 01:52:16,349 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 01:52:16,349 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 01:52:16,349 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 01:52:16,350 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 01:52:16,350 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 01:52:16,350 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 01:52:16,350 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 01:52:16,350 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 01:52:16,350 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 01:52:16,350 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 01:52:16,350 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 01:52:16,350 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 01:52:16,355 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 01:52:16,356 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-15 01:52:16,357 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-15 01:52:16,357 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-15 01:52:16,360 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-15 01:52:16,360 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 01:52:16,361 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-15 01:52:16,361 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-15 01:52:16,362 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-15 01:52:16,362 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-15 01:52:16,559 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 01:52:16,581 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 01:52:16,583 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 01:52:16,584 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 01:52:16,584 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 01:52:16,586 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound20.c [2022-04-15 01:52:16,642 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e00d2eb2c/36c873fb46c74e94b7e9f3ff5c826809/FLAG2ac4e2dc0 [2022-04-15 01:52:16,998 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 01:52:16,998 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound20.c [2022-04-15 01:52:17,003 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e00d2eb2c/36c873fb46c74e94b7e9f3ff5c826809/FLAG2ac4e2dc0 [2022-04-15 01:52:17,012 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e00d2eb2c/36c873fb46c74e94b7e9f3ff5c826809 [2022-04-15 01:52:17,013 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 01:52:17,014 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-15 01:52:17,015 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 01:52:17,015 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 01:52:17,017 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 01:52:17,018 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 01:52:17" (1/1) ... [2022-04-15 01:52:17,019 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@71d7b58c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 01:52:17, skipping insertion in model container [2022-04-15 01:52:17,019 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 01:52:17" (1/1) ... [2022-04-15 01:52:17,026 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 01:52:17,036 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 01:52:17,148 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_unwindbound20.c[597,610] [2022-04-15 01:52:17,174 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 01:52:17,184 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 01:52:17,199 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_unwindbound20.c[597,610] [2022-04-15 01:52:17,204 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 01:52:17,213 INFO L208 MainTranslator]: Completed translation [2022-04-15 01:52:17,213 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 01:52:17 WrapperNode [2022-04-15 01:52:17,213 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 01:52:17,214 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 01:52:17,215 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 01:52:17,215 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 01:52:17,221 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 01:52:17" (1/1) ... [2022-04-15 01:52:17,222 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 01:52:17" (1/1) ... [2022-04-15 01:52:17,227 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 01:52:17" (1/1) ... [2022-04-15 01:52:17,228 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 01:52:17" (1/1) ... [2022-04-15 01:52:17,236 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 01:52:17" (1/1) ... [2022-04-15 01:52:17,241 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 01:52:17" (1/1) ... [2022-04-15 01:52:17,246 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 01:52:17" (1/1) ... [2022-04-15 01:52:17,249 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 01:52:17,251 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 01:52:17,251 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 01:52:17,251 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 01:52:17,251 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 01:52:17" (1/1) ... [2022-04-15 01:52:17,265 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 01:52:17,273 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 01:52:17,284 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-15 01:52:17,291 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-15 01:52:17,314 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 01:52:17,314 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 01:52:17,315 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 01:52:17,315 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 01:52:17,315 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 01:52:17,315 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 01:52:17,315 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 01:52:17,316 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 01:52:17,317 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 01:52:17,317 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 01:52:17,317 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 01:52:17,317 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 01:52:17,317 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 01:52:17,317 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 01:52:17,317 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 01:52:17,317 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 01:52:17,318 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 01:52:17,318 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 01:52:17,318 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 01:52:17,318 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 01:52:17,365 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 01:52:17,366 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 01:52:17,527 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 01:52:17,533 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 01:52:17,533 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-15 01:52:17,534 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 01:52:17 BoogieIcfgContainer [2022-04-15 01:52:17,534 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 01:52:17,535 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-15 01:52:17,535 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-15 01:52:17,536 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-15 01:52:17,538 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 01:52:17" (1/1) ... [2022-04-15 01:52:17,539 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-15 01:52:17,558 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 15.04 01:52:17 BasicIcfg [2022-04-15 01:52:17,558 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-15 01:52:17,560 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 01:52:17,560 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 01:52:17,563 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 01:52:17,563 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 01:52:17" (1/4) ... [2022-04-15 01:52:17,563 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@491e3af0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 01:52:17, skipping insertion in model container [2022-04-15 01:52:17,563 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 01:52:17" (2/4) ... [2022-04-15 01:52:17,564 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@491e3af0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 01:52:17, skipping insertion in model container [2022-04-15 01:52:17,564 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 01:52:17" (3/4) ... [2022-04-15 01:52:17,564 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@491e3af0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 15.04 01:52:17, skipping insertion in model container [2022-04-15 01:52:17,564 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 15.04 01:52:17" (4/4) ... [2022-04-15 01:52:17,565 INFO L111 eAbstractionObserver]: Analyzing ICFG bresenham-ll_unwindbound20.cqvasr [2022-04-15 01:52:17,569 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-15 01:52:17,569 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 01:52:17,602 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 01:52:17,611 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-15 01:52:17,611 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 01:52:17,628 INFO L276 IsEmpty]: Start isEmpty. Operand has 25 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 01:52:17,632 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-15 01:52:17,632 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 01:52:17,633 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 01:52:17,633 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 01:52:17,637 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 01:52:17,637 INFO L85 PathProgramCache]: Analyzing trace with hash -498253564, now seen corresponding path program 1 times [2022-04-15 01:52:17,645 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 01:52:17,646 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [841556904] [2022-04-15 01:52:17,646 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:52:17,647 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 01:52:17,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:17,843 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 01:52:17,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:17,866 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {28#true} is VALID [2022-04-15 01:52:17,867 INFO L290 TraceCheckUtils]: 1: Hoare triple {28#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28#true} is VALID [2022-04-15 01:52:17,867 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {28#true} {28#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28#true} is VALID [2022-04-15 01:52:17,869 INFO L272 TraceCheckUtils]: 0: Hoare triple {28#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 01:52:17,869 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {28#true} is VALID [2022-04-15 01:52:17,869 INFO L290 TraceCheckUtils]: 2: Hoare triple {28#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28#true} is VALID [2022-04-15 01:52:17,869 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28#true} {28#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28#true} is VALID [2022-04-15 01:52:17,870 INFO L272 TraceCheckUtils]: 4: Hoare triple {28#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28#true} is VALID [2022-04-15 01:52:17,870 INFO L290 TraceCheckUtils]: 5: Hoare triple {28#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {28#true} is VALID [2022-04-15 01:52:17,870 INFO L290 TraceCheckUtils]: 6: Hoare triple {28#true} [71] L31-3-->L31-4: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {29#false} is VALID [2022-04-15 01:52:17,871 INFO L290 TraceCheckUtils]: 7: Hoare triple {29#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {29#false} is VALID [2022-04-15 01:52:17,871 INFO L272 TraceCheckUtils]: 8: Hoare triple {29#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {29#false} is VALID [2022-04-15 01:52:17,871 INFO L290 TraceCheckUtils]: 9: Hoare triple {29#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {29#false} is VALID [2022-04-15 01:52:17,871 INFO L290 TraceCheckUtils]: 10: Hoare triple {29#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {29#false} is VALID [2022-04-15 01:52:17,872 INFO L290 TraceCheckUtils]: 11: Hoare triple {29#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29#false} is VALID [2022-04-15 01:52:17,872 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 01:52:17,872 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 01:52:17,873 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [841556904] [2022-04-15 01:52:17,873 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [841556904] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 01:52:17,873 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 01:52:17,873 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 01:52:17,874 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [836959543] [2022-04-15 01:52:17,875 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 01:52:17,879 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-15 01:52:17,880 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 01:52:17,882 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 01:52:17,903 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 01:52:17,903 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 01:52:17,903 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 01:52:17,924 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 01:52:17,925 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 01:52:17,928 INFO L87 Difference]: Start difference. First operand has 25 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 01:52:18,062 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:18,063 INFO L93 Difference]: Finished difference Result 45 states and 58 transitions. [2022-04-15 01:52:18,063 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 01:52:18,063 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-15 01:52:18,064 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 01:52:18,065 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 01:52:18,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-15 01:52:18,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 01:52:18,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-15 01:52:18,079 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 58 transitions. [2022-04-15 01:52:18,140 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 01:52:18,148 INFO L225 Difference]: With dead ends: 45 [2022-04-15 01:52:18,148 INFO L226 Difference]: Without dead ends: 21 [2022-04-15 01:52:18,151 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 01:52:18,154 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 6 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 31 SdHoareTripleChecker+Invalid, 18 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 01:52:18,155 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 31 Invalid, 18 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 01:52:18,167 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states. [2022-04-15 01:52:18,176 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 20. [2022-04-15 01:52:18,176 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 01:52:18,176 INFO L82 GeneralOperation]: Start isEquivalent. First operand 21 states. Second operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 01:52:18,177 INFO L74 IsIncluded]: Start isIncluded. First operand 21 states. Second operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 01:52:18,177 INFO L87 Difference]: Start difference. First operand 21 states. Second operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 01:52:18,179 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:18,180 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-15 01:52:18,180 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-15 01:52:18,180 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:52:18,180 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:52:18,181 INFO L74 IsIncluded]: Start isIncluded. First operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 21 states. [2022-04-15 01:52:18,181 INFO L87 Difference]: Start difference. First operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 21 states. [2022-04-15 01:52:18,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:18,183 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-15 01:52:18,183 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-15 01:52:18,184 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:52:18,184 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:52:18,184 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 01:52:18,184 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 01:52:18,184 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 01:52:18,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 23 transitions. [2022-04-15 01:52:18,187 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 23 transitions. Word has length 12 [2022-04-15 01:52:18,187 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 01:52:18,188 INFO L478 AbstractCegarLoop]: Abstraction has 20 states and 23 transitions. [2022-04-15 01:52:18,188 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 01:52:18,188 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 23 transitions. [2022-04-15 01:52:18,189 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-15 01:52:18,189 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 01:52:18,189 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 01:52:18,189 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 01:52:18,189 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 01:52:18,190 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 01:52:18,190 INFO L85 PathProgramCache]: Analyzing trace with hash -467747580, now seen corresponding path program 1 times [2022-04-15 01:52:18,191 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 01:52:18,191 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [866283150] [2022-04-15 01:52:18,191 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:52:18,191 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 01:52:18,205 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 01:52:18,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1704308385] [2022-04-15 01:52:18,206 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:52:18,206 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 01:52:18,206 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 01:52:18,219 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-15 01:52:18,224 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-15 01:52:18,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:18,293 INFO L263 TraceCheckSpWp]: Trace formula consists of 79 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 01:52:18,302 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:18,305 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 01:52:18,480 INFO L272 TraceCheckUtils]: 0: Hoare triple {164#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-15 01:52:18,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {164#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {164#true} is VALID [2022-04-15 01:52:18,481 INFO L290 TraceCheckUtils]: 2: Hoare triple {164#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-15 01:52:18,481 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {164#true} {164#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-15 01:52:18,481 INFO L272 TraceCheckUtils]: 4: Hoare triple {164#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-15 01:52:18,482 INFO L290 TraceCheckUtils]: 5: Hoare triple {164#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {184#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:18,483 INFO L290 TraceCheckUtils]: 6: Hoare triple {184#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {184#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:18,483 INFO L290 TraceCheckUtils]: 7: Hoare triple {184#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {191#(and (= main_~xy~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~yx~0 0))} is VALID [2022-04-15 01:52:18,484 INFO L272 TraceCheckUtils]: 8: Hoare triple {191#(and (= main_~xy~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~yx~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {195#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 01:52:18,485 INFO L290 TraceCheckUtils]: 9: Hoare triple {195#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {199#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 01:52:18,485 INFO L290 TraceCheckUtils]: 10: Hoare triple {199#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {165#false} is VALID [2022-04-15 01:52:18,485 INFO L290 TraceCheckUtils]: 11: Hoare triple {165#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165#false} is VALID [2022-04-15 01:52:18,486 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 01:52:18,486 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 01:52:18,486 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 01:52:18,486 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [866283150] [2022-04-15 01:52:18,486 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 01:52:18,486 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1704308385] [2022-04-15 01:52:18,486 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1704308385] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 01:52:18,486 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 01:52:18,486 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 01:52:18,487 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1430211444] [2022-04-15 01:52:18,487 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 01:52:18,488 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-15 01:52:18,488 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 01:52:18,488 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 01:52:18,498 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 01:52:18,498 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 01:52:18,498 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 01:52:18,499 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 01:52:18,499 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 01:52:18,499 INFO L87 Difference]: Start difference. First operand 20 states and 23 transitions. Second operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 01:52:18,652 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:18,652 INFO L93 Difference]: Finished difference Result 34 states and 40 transitions. [2022-04-15 01:52:18,652 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 01:52:18,653 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-15 01:52:18,653 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 01:52:18,653 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 01:52:18,654 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2022-04-15 01:52:18,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 01:52:18,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2022-04-15 01:52:18,656 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 40 transitions. [2022-04-15 01:52:18,687 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 01:52:18,688 INFO L225 Difference]: With dead ends: 34 [2022-04-15 01:52:18,688 INFO L226 Difference]: Without dead ends: 29 [2022-04-15 01:52:18,689 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-15 01:52:18,689 INFO L913 BasicCegarLoop]: 15 mSDtfsCounter, 12 mSDsluCounter, 49 mSDsCounter, 0 mSdLazyCounter, 56 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 64 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 56 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 01:52:18,690 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 64 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 56 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 01:52:18,690 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-15 01:52:18,695 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 28. [2022-04-15 01:52:18,696 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 01:52:18,697 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 01:52:18,698 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 01:52:18,698 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 01:52:18,701 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:18,702 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2022-04-15 01:52:18,702 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2022-04-15 01:52:18,703 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:52:18,703 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:52:18,703 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 29 states. [2022-04-15 01:52:18,705 INFO L87 Difference]: Start difference. First operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 29 states. [2022-04-15 01:52:18,731 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:18,732 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2022-04-15 01:52:18,732 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2022-04-15 01:52:18,732 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:52:18,732 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:52:18,732 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 01:52:18,732 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 01:52:18,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 01:52:18,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 31 transitions. [2022-04-15 01:52:18,734 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 31 transitions. Word has length 12 [2022-04-15 01:52:18,734 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 01:52:18,734 INFO L478 AbstractCegarLoop]: Abstraction has 28 states and 31 transitions. [2022-04-15 01:52:18,734 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 01:52:18,735 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2022-04-15 01:52:18,754 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-15 01:52:18,755 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 01:52:18,755 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 01:52:18,783 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-15 01:52:18,966 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-15 01:52:18,967 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 01:52:18,968 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 01:52:18,968 INFO L85 PathProgramCache]: Analyzing trace with hash 1909475431, now seen corresponding path program 1 times [2022-04-15 01:52:18,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 01:52:18,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1087629456] [2022-04-15 01:52:18,968 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:52:18,968 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 01:52:18,984 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 01:52:18,985 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1112276033] [2022-04-15 01:52:18,985 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:52:18,985 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 01:52:18,985 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 01:52:18,991 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-15 01:52:19,010 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-15 01:52:19,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:19,038 INFO L263 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 01:52:19,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:19,048 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 01:52:19,308 INFO L272 TraceCheckUtils]: 0: Hoare triple {352#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,308 INFO L290 TraceCheckUtils]: 1: Hoare triple {352#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {352#true} is VALID [2022-04-15 01:52:19,309 INFO L290 TraceCheckUtils]: 2: Hoare triple {352#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,311 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {352#true} {352#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,312 INFO L272 TraceCheckUtils]: 4: Hoare triple {352#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,316 INFO L290 TraceCheckUtils]: 5: Hoare triple {352#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:19,317 INFO L290 TraceCheckUtils]: 6: Hoare triple {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:19,318 INFO L290 TraceCheckUtils]: 7: Hoare triple {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:19,318 INFO L272 TraceCheckUtils]: 8: Hoare triple {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {352#true} is VALID [2022-04-15 01:52:19,318 INFO L290 TraceCheckUtils]: 9: Hoare triple {352#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {352#true} is VALID [2022-04-15 01:52:19,318 INFO L290 TraceCheckUtils]: 10: Hoare triple {352#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,318 INFO L290 TraceCheckUtils]: 11: Hoare triple {352#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,319 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {352#true} {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:19,320 INFO L290 TraceCheckUtils]: 13: Hoare triple {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:19,321 INFO L290 TraceCheckUtils]: 14: Hoare triple {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {400#(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-15 01:52:19,322 INFO L290 TraceCheckUtils]: 15: Hoare triple {400#(and (= main_~x~0 0) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {404#(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-15 01:52:19,322 INFO L290 TraceCheckUtils]: 16: Hoare triple {404#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {404#(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-15 01:52:19,323 INFO L290 TraceCheckUtils]: 17: Hoare triple {404#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {411#(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-15 01:52:19,324 INFO L272 TraceCheckUtils]: 18: Hoare triple {411#(and (= main_~xy~0 0) (= main_~Y~0 main_~yx~0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {415#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 01:52:19,325 INFO L290 TraceCheckUtils]: 19: Hoare triple {415#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {419#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 01:52:19,325 INFO L290 TraceCheckUtils]: 20: Hoare triple {419#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {353#false} is VALID [2022-04-15 01:52:19,325 INFO L290 TraceCheckUtils]: 21: Hoare triple {353#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {353#false} is VALID [2022-04-15 01:52:19,326 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 01:52:19,326 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 01:52:19,527 INFO L290 TraceCheckUtils]: 21: Hoare triple {353#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {353#false} is VALID [2022-04-15 01:52:19,531 INFO L290 TraceCheckUtils]: 20: Hoare triple {419#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {353#false} is VALID [2022-04-15 01:52:19,532 INFO L290 TraceCheckUtils]: 19: Hoare triple {415#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {419#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 01:52:19,534 INFO L272 TraceCheckUtils]: 18: Hoare triple {435#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {415#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 01:52:19,535 INFO L290 TraceCheckUtils]: 17: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {435#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} is VALID [2022-04-15 01:52:19,536 INFO L290 TraceCheckUtils]: 16: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {439#(= (+ (* 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-15 01:52:19,538 INFO L290 TraceCheckUtils]: 15: Hoare triple {446#(= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {439#(= (+ (* 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-15 01:52:19,540 INFO L290 TraceCheckUtils]: 14: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {446#(= (+ (* (* 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-15 01:52:19,541 INFO L290 TraceCheckUtils]: 13: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {439#(= (+ (* 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-15 01:52:19,542 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {352#true} {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {439#(= (+ (* 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-15 01:52:19,542 INFO L290 TraceCheckUtils]: 11: Hoare triple {352#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,543 INFO L290 TraceCheckUtils]: 10: Hoare triple {352#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,543 INFO L290 TraceCheckUtils]: 9: Hoare triple {352#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {352#true} is VALID [2022-04-15 01:52:19,543 INFO L272 TraceCheckUtils]: 8: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {352#true} is VALID [2022-04-15 01:52:19,544 INFO L290 TraceCheckUtils]: 7: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {439#(= (+ (* 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-15 01:52:19,544 INFO L290 TraceCheckUtils]: 6: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {439#(= (+ (* 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-15 01:52:19,545 INFO L290 TraceCheckUtils]: 5: Hoare triple {352#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {439#(= (+ (* 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-15 01:52:19,545 INFO L272 TraceCheckUtils]: 4: Hoare triple {352#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,545 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {352#true} {352#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,546 INFO L290 TraceCheckUtils]: 2: Hoare triple {352#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,546 INFO L290 TraceCheckUtils]: 1: Hoare triple {352#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {352#true} is VALID [2022-04-15 01:52:19,546 INFO L272 TraceCheckUtils]: 0: Hoare triple {352#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-15 01:52:19,546 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-15 01:52:19,547 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 01:52:19,547 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1087629456] [2022-04-15 01:52:19,547 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 01:52:19,547 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1112276033] [2022-04-15 01:52:19,547 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1112276033] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 01:52:19,547 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 01:52:19,547 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-15 01:52:19,548 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [456131367] [2022-04-15 01:52:19,548 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 01:52:19,548 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 22 [2022-04-15 01:52:19,549 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 01:52:19,549 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 01:52:19,583 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 01:52:19,584 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 01:52:19,584 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 01:52:19,584 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 01:52:19,585 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-15 01:52:19,585 INFO L87 Difference]: Start difference. First operand 28 states and 31 transitions. Second operand has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 01:52:20,264 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:20,264 INFO L93 Difference]: Finished difference Result 45 states and 52 transitions. [2022-04-15 01:52:20,264 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 01:52:20,264 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 22 [2022-04-15 01:52:20,265 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 01:52:20,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 01:52:20,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-15 01:52:20,267 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 01:52:20,270 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-15 01:52:20,270 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 49 transitions. [2022-04-15 01:52:20,332 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 01:52:20,334 INFO L225 Difference]: With dead ends: 45 [2022-04-15 01:52:20,334 INFO L226 Difference]: Without dead ends: 38 [2022-04-15 01:52:20,335 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 47 GetRequests, 32 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=44, Invalid=166, Unknown=0, NotChecked=0, Total=210 [2022-04-15 01:52:20,335 INFO L913 BasicCegarLoop]: 15 mSDtfsCounter, 20 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 100 SdHoareTripleChecker+Invalid, 165 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 01:52:20,336 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 100 Invalid, 165 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 154 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 01:52:20,336 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-15 01:52:20,343 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 36. [2022-04-15 01:52:20,343 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 01:52:20,343 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 01:52:20,344 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 01:52:20,344 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 01:52:20,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:20,347 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-15 01:52:20,347 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-15 01:52:20,347 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:52:20,347 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:52:20,348 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 38 states. [2022-04-15 01:52:20,348 INFO L87 Difference]: Start difference. First operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 38 states. [2022-04-15 01:52:20,350 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:20,350 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-15 01:52:20,350 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-15 01:52:20,351 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:52:20,351 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:52:20,351 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 01:52:20,351 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 01:52:20,351 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 01:52:20,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 40 transitions. [2022-04-15 01:52:20,353 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 40 transitions. Word has length 22 [2022-04-15 01:52:20,353 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 01:52:20,353 INFO L478 AbstractCegarLoop]: Abstraction has 36 states and 40 transitions. [2022-04-15 01:52:20,354 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 01:52:20,354 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 40 transitions. [2022-04-15 01:52:20,354 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-15 01:52:20,354 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 01:52:20,355 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 01:52:20,379 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-15 01:52:20,578 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-15 01:52:20,579 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 01:52:20,579 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 01:52:20,579 INFO L85 PathProgramCache]: Analyzing trace with hash 1519292561, now seen corresponding path program 1 times [2022-04-15 01:52:20,579 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 01:52:20,579 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [969375815] [2022-04-15 01:52:20,580 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:52:20,580 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 01:52:20,593 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 01:52:20,593 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [803055625] [2022-04-15 01:52:20,594 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:52:20,594 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 01:52:20,594 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 01:52:20,595 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-15 01:52:20,596 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-15 01:52:20,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:20,638 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 01:52:20,648 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:20,649 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 01:52:20,775 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {688#true} is VALID [2022-04-15 01:52:20,778 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {696#(<= ~counter~0 0)} is VALID [2022-04-15 01:52:20,778 INFO L290 TraceCheckUtils]: 2: Hoare triple {696#(<= ~counter~0 0)} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {696#(<= ~counter~0 0)} is VALID [2022-04-15 01:52:20,779 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {696#(<= ~counter~0 0)} {688#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {696#(<= ~counter~0 0)} is VALID [2022-04-15 01:52:20,779 INFO L272 TraceCheckUtils]: 4: Hoare triple {696#(<= ~counter~0 0)} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {696#(<= ~counter~0 0)} is VALID [2022-04-15 01:52:20,789 INFO L290 TraceCheckUtils]: 5: Hoare triple {696#(<= ~counter~0 0)} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {696#(<= ~counter~0 0)} is VALID [2022-04-15 01:52:20,790 INFO L290 TraceCheckUtils]: 6: Hoare triple {696#(<= ~counter~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {712#(<= ~counter~0 1)} is VALID [2022-04-15 01:52:20,791 INFO L290 TraceCheckUtils]: 7: Hoare triple {712#(<= ~counter~0 1)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {712#(<= ~counter~0 1)} is VALID [2022-04-15 01:52:20,792 INFO L272 TraceCheckUtils]: 8: Hoare triple {712#(<= ~counter~0 1)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {712#(<= ~counter~0 1)} is VALID [2022-04-15 01:52:20,793 INFO L290 TraceCheckUtils]: 9: Hoare triple {712#(<= ~counter~0 1)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {712#(<= ~counter~0 1)} is VALID [2022-04-15 01:52:20,793 INFO L290 TraceCheckUtils]: 10: Hoare triple {712#(<= ~counter~0 1)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {712#(<= ~counter~0 1)} is VALID [2022-04-15 01:52:20,794 INFO L290 TraceCheckUtils]: 11: Hoare triple {712#(<= ~counter~0 1)} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {712#(<= ~counter~0 1)} is VALID [2022-04-15 01:52:20,794 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {712#(<= ~counter~0 1)} {712#(<= ~counter~0 1)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {712#(<= ~counter~0 1)} is VALID [2022-04-15 01:52:20,795 INFO L290 TraceCheckUtils]: 13: Hoare triple {712#(<= ~counter~0 1)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {712#(<= ~counter~0 1)} is VALID [2022-04-15 01:52:20,795 INFO L290 TraceCheckUtils]: 14: Hoare triple {712#(<= ~counter~0 1)} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {712#(<= ~counter~0 1)} is VALID [2022-04-15 01:52:20,797 INFO L290 TraceCheckUtils]: 15: Hoare triple {712#(<= ~counter~0 1)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {712#(<= ~counter~0 1)} is VALID [2022-04-15 01:52:20,797 INFO L290 TraceCheckUtils]: 16: Hoare triple {712#(<= ~counter~0 1)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {743#(<= |main_#t~post6| 1)} is VALID [2022-04-15 01:52:20,798 INFO L290 TraceCheckUtils]: 17: Hoare triple {743#(<= |main_#t~post6| 1)} [74] L31-1-->L31-4: Formula: (not (< |v_main_#t~post6_3| 20)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {689#false} is VALID [2022-04-15 01:52:20,798 INFO L290 TraceCheckUtils]: 18: Hoare triple {689#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {689#false} is VALID [2022-04-15 01:52:20,798 INFO L272 TraceCheckUtils]: 19: Hoare triple {689#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {689#false} is VALID [2022-04-15 01:52:20,798 INFO L290 TraceCheckUtils]: 20: Hoare triple {689#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {689#false} is VALID [2022-04-15 01:52:20,798 INFO L290 TraceCheckUtils]: 21: Hoare triple {689#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {689#false} is VALID [2022-04-15 01:52:20,799 INFO L290 TraceCheckUtils]: 22: Hoare triple {689#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {689#false} is VALID [2022-04-15 01:52:20,799 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 01:52:20,799 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 01:52:20,988 INFO L290 TraceCheckUtils]: 22: Hoare triple {689#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {689#false} is VALID [2022-04-15 01:52:20,989 INFO L290 TraceCheckUtils]: 21: Hoare triple {689#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {689#false} is VALID [2022-04-15 01:52:20,989 INFO L290 TraceCheckUtils]: 20: Hoare triple {689#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {689#false} is VALID [2022-04-15 01:52:20,989 INFO L272 TraceCheckUtils]: 19: Hoare triple {689#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {689#false} is VALID [2022-04-15 01:52:20,989 INFO L290 TraceCheckUtils]: 18: Hoare triple {689#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {689#false} is VALID [2022-04-15 01:52:20,990 INFO L290 TraceCheckUtils]: 17: Hoare triple {777#(< |main_#t~post6| 20)} [74] L31-1-->L31-4: Formula: (not (< |v_main_#t~post6_3| 20)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {689#false} is VALID [2022-04-15 01:52:20,990 INFO L290 TraceCheckUtils]: 16: Hoare triple {781#(< ~counter~0 20)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {777#(< |main_#t~post6| 20)} is VALID [2022-04-15 01:52:20,991 INFO L290 TraceCheckUtils]: 15: Hoare triple {781#(< ~counter~0 20)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {781#(< ~counter~0 20)} is VALID [2022-04-15 01:52:20,991 INFO L290 TraceCheckUtils]: 14: Hoare triple {781#(< ~counter~0 20)} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {781#(< ~counter~0 20)} is VALID [2022-04-15 01:52:20,992 INFO L290 TraceCheckUtils]: 13: Hoare triple {781#(< ~counter~0 20)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {781#(< ~counter~0 20)} is VALID [2022-04-15 01:52:20,995 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {688#true} {781#(< ~counter~0 20)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {781#(< ~counter~0 20)} is VALID [2022-04-15 01:52:20,995 INFO L290 TraceCheckUtils]: 11: Hoare triple {688#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {688#true} is VALID [2022-04-15 01:52:20,995 INFO L290 TraceCheckUtils]: 10: Hoare triple {688#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {688#true} is VALID [2022-04-15 01:52:20,995 INFO L290 TraceCheckUtils]: 9: Hoare triple {688#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {688#true} is VALID [2022-04-15 01:52:20,996 INFO L272 TraceCheckUtils]: 8: Hoare triple {781#(< ~counter~0 20)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {688#true} is VALID [2022-04-15 01:52:20,996 INFO L290 TraceCheckUtils]: 7: Hoare triple {781#(< ~counter~0 20)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {781#(< ~counter~0 20)} is VALID [2022-04-15 01:52:20,997 INFO L290 TraceCheckUtils]: 6: Hoare triple {812#(< ~counter~0 19)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {781#(< ~counter~0 20)} is VALID [2022-04-15 01:52:20,997 INFO L290 TraceCheckUtils]: 5: Hoare triple {812#(< ~counter~0 19)} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {812#(< ~counter~0 19)} is VALID [2022-04-15 01:52:20,999 INFO L272 TraceCheckUtils]: 4: Hoare triple {812#(< ~counter~0 19)} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {812#(< ~counter~0 19)} is VALID [2022-04-15 01:52:20,999 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {812#(< ~counter~0 19)} {688#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {812#(< ~counter~0 19)} is VALID [2022-04-15 01:52:20,999 INFO L290 TraceCheckUtils]: 2: Hoare triple {812#(< ~counter~0 19)} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {812#(< ~counter~0 19)} is VALID [2022-04-15 01:52:21,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {812#(< ~counter~0 19)} is VALID [2022-04-15 01:52:21,001 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {688#true} is VALID [2022-04-15 01:52:21,001 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 01:52:21,002 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 01:52:21,002 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [969375815] [2022-04-15 01:52:21,002 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 01:52:21,002 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [803055625] [2022-04-15 01:52:21,002 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [803055625] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 01:52:21,002 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 01:52:21,002 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-15 01:52:21,002 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1168630149] [2022-04-15 01:52:21,002 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 01:52:21,003 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 23 [2022-04-15 01:52:21,003 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 01:52:21,004 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 01:52:21,037 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 01:52:21,038 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 01:52:21,038 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 01:52:21,038 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 01:52:21,038 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-15 01:52:21,039 INFO L87 Difference]: Start difference. First operand 36 states and 40 transitions. Second operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 01:52:21,264 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:21,264 INFO L93 Difference]: Finished difference Result 77 states and 85 transitions. [2022-04-15 01:52:21,264 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 01:52:21,264 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 23 [2022-04-15 01:52:21,264 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 01:52:21,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 01:52:21,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 76 transitions. [2022-04-15 01:52:21,268 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 01:52:21,270 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 76 transitions. [2022-04-15 01:52:21,270 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 76 transitions. [2022-04-15 01:52:21,327 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 01:52:21,328 INFO L225 Difference]: With dead ends: 77 [2022-04-15 01:52:21,328 INFO L226 Difference]: Without dead ends: 71 [2022-04-15 01:52:21,329 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 39 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-15 01:52:21,329 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 47 mSDsluCounter, 91 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 01:52:21,330 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 115 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 01:52:21,330 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-15 01:52:21,345 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 59. [2022-04-15 01:52:21,345 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 01:52:21,346 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 01:52:21,346 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 01:52:21,346 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 01:52:21,348 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:21,348 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-15 01:52:21,349 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 77 transitions. [2022-04-15 01:52:21,349 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:52:21,349 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:52:21,349 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 71 states. [2022-04-15 01:52:21,350 INFO L87 Difference]: Start difference. First operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 71 states. [2022-04-15 01:52:21,352 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:21,352 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-15 01:52:21,352 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 77 transitions. [2022-04-15 01:52:21,352 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:52:21,352 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:52:21,352 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 01:52:21,352 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 01:52:21,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 01:52:21,354 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 67 transitions. [2022-04-15 01:52:21,355 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 67 transitions. Word has length 23 [2022-04-15 01:52:21,355 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 01:52:21,355 INFO L478 AbstractCegarLoop]: Abstraction has 59 states and 67 transitions. [2022-04-15 01:52:21,355 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 01:52:21,355 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 67 transitions. [2022-04-15 01:52:21,356 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-15 01:52:21,356 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 01:52:21,356 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 01:52:21,379 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-15 01:52:21,575 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-15 01:52:21,576 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 01:52:21,576 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 01:52:21,576 INFO L85 PathProgramCache]: Analyzing trace with hash -2036751370, now seen corresponding path program 1 times [2022-04-15 01:52:21,576 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 01:52:21,576 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [791019800] [2022-04-15 01:52:21,576 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:52:21,576 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 01:52:21,603 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 01:52:21,603 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [134775615] [2022-04-15 01:52:21,603 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:52:21,603 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 01:52:21,603 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 01:52:21,607 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-15 01:52:21,608 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-15 01:52:21,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:21,651 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-15 01:52:21,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:21,666 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 01:52:22,096 INFO L272 TraceCheckUtils]: 0: Hoare triple {1165#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,097 INFO L290 TraceCheckUtils]: 1: Hoare triple {1165#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1165#true} is VALID [2022-04-15 01:52:22,097 INFO L290 TraceCheckUtils]: 2: Hoare triple {1165#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,097 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1165#true} {1165#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,097 INFO L272 TraceCheckUtils]: 4: Hoare triple {1165#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,108 INFO L290 TraceCheckUtils]: 5: Hoare triple {1165#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1185#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:22,108 INFO L290 TraceCheckUtils]: 6: Hoare triple {1185#(and (= main_~x~0 0) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1185#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:22,109 INFO L290 TraceCheckUtils]: 7: Hoare triple {1185#(and (= main_~x~0 0) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1185#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:22,109 INFO L272 TraceCheckUtils]: 8: Hoare triple {1185#(and (= main_~x~0 0) (= main_~y~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1165#true} is VALID [2022-04-15 01:52:22,109 INFO L290 TraceCheckUtils]: 9: Hoare triple {1165#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1165#true} is VALID [2022-04-15 01:52:22,109 INFO L290 TraceCheckUtils]: 10: Hoare triple {1165#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,109 INFO L290 TraceCheckUtils]: 11: Hoare triple {1165#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,111 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1165#true} {1185#(and (= main_~x~0 0) (= main_~y~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1185#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:22,111 INFO L290 TraceCheckUtils]: 13: Hoare triple {1185#(and (= main_~x~0 0) (= main_~y~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1210#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-15 01:52:22,112 INFO L290 TraceCheckUtils]: 14: Hoare triple {1210#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {1214#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= (+ (- 1) main_~y~0) 0))} is VALID [2022-04-15 01:52:22,112 INFO L290 TraceCheckUtils]: 15: Hoare triple {1214#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= (+ (- 1) main_~y~0) 0))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1218#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} is VALID [2022-04-15 01:52:22,113 INFO L290 TraceCheckUtils]: 16: Hoare triple {1218#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1218#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} is VALID [2022-04-15 01:52:22,113 INFO L290 TraceCheckUtils]: 17: Hoare triple {1218#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1225#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} is VALID [2022-04-15 01:52:22,113 INFO L272 TraceCheckUtils]: 18: Hoare triple {1225#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1165#true} is VALID [2022-04-15 01:52:22,113 INFO L290 TraceCheckUtils]: 19: Hoare triple {1165#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1232#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 01:52:22,114 INFO L290 TraceCheckUtils]: 20: Hoare triple {1232#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:52:22,114 INFO L290 TraceCheckUtils]: 21: Hoare triple {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:52:22,116 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} {1225#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1243#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0))} is VALID [2022-04-15 01:52:22,116 INFO L290 TraceCheckUtils]: 23: Hoare triple {1243#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1247#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)))} is VALID [2022-04-15 01:52:22,117 INFO L290 TraceCheckUtils]: 24: Hoare triple {1247#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1251#(and (not (<= 1 main_~X~0)) (= (+ (- 1) main_~y~0) 0) (= main_~y~0 main_~xy~0) (<= 0 main_~X~0) (= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (* main_~Y~0 4)) (= main_~Y~0 main_~yx~0))} is VALID [2022-04-15 01:52:22,118 INFO L272 TraceCheckUtils]: 25: Hoare triple {1251#(and (not (<= 1 main_~X~0)) (= (+ (- 1) main_~y~0) 0) (= main_~y~0 main_~xy~0) (<= 0 main_~X~0) (= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (* main_~Y~0 4)) (= main_~Y~0 main_~yx~0))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1255#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 01:52:22,119 INFO L290 TraceCheckUtils]: 26: Hoare triple {1255#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1259#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 01:52:22,119 INFO L290 TraceCheckUtils]: 27: Hoare triple {1259#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1166#false} is VALID [2022-04-15 01:52:22,119 INFO L290 TraceCheckUtils]: 28: Hoare triple {1166#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1166#false} is VALID [2022-04-15 01:52:22,119 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 01:52:22,119 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 01:52:22,881 INFO L290 TraceCheckUtils]: 28: Hoare triple {1166#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1166#false} is VALID [2022-04-15 01:52:22,882 INFO L290 TraceCheckUtils]: 27: Hoare triple {1259#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1166#false} is VALID [2022-04-15 01:52:22,882 INFO L290 TraceCheckUtils]: 26: Hoare triple {1255#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1259#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 01:52:22,883 INFO L272 TraceCheckUtils]: 25: Hoare triple {1275#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1255#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 01:52:22,884 INFO L290 TraceCheckUtils]: 24: Hoare triple {1279#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1275#(= (+ (* 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-15 01:52:22,884 INFO L290 TraceCheckUtils]: 23: Hoare triple {1283#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1279#(= (+ (* 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-15 01:52:22,886 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} {1287#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1283#(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-15 01:52:22,886 INFO L290 TraceCheckUtils]: 21: Hoare triple {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:52:22,886 INFO L290 TraceCheckUtils]: 20: Hoare triple {1297#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:52:22,887 INFO L290 TraceCheckUtils]: 19: Hoare triple {1165#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1297#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 01:52:22,887 INFO L272 TraceCheckUtils]: 18: Hoare triple {1287#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1165#true} is VALID [2022-04-15 01:52:22,888 INFO L290 TraceCheckUtils]: 17: Hoare triple {1304#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1287#(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-15 01:52:22,889 INFO L290 TraceCheckUtils]: 16: Hoare triple {1304#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1304#(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-15 01:52:22,891 INFO L290 TraceCheckUtils]: 15: Hoare triple {1311#(or (<= (+ main_~x~0 1) main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* (* (+ main_~x~0 1) main_~y~0) 2) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* (+ main_~x~0 1) main_~Y~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1304#(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-15 01:52:22,893 INFO L290 TraceCheckUtils]: 14: Hoare triple {1315#(or (forall ((main_~Y~0 Int)) (= (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0)) (* 2 (* (+ main_~x~0 1) (+ main_~y~0 1))) (* (* main_~X~0 (+ main_~y~0 1)) (- 2))) (+ 2 (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))) (<= (+ main_~x~0 1) main_~X~0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {1311#(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-15 01:52:22,895 INFO L290 TraceCheckUtils]: 13: Hoare triple {1165#true} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1315#(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-15 01:52:22,895 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1165#true} {1165#true} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1165#true} is VALID [2022-04-15 01:52:22,895 INFO L290 TraceCheckUtils]: 11: Hoare triple {1165#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,895 INFO L290 TraceCheckUtils]: 10: Hoare triple {1165#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,895 INFO L290 TraceCheckUtils]: 9: Hoare triple {1165#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1165#true} is VALID [2022-04-15 01:52:22,895 INFO L272 TraceCheckUtils]: 8: Hoare triple {1165#true} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1165#true} is VALID [2022-04-15 01:52:22,895 INFO L290 TraceCheckUtils]: 7: Hoare triple {1165#true} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1165#true} is VALID [2022-04-15 01:52:22,896 INFO L290 TraceCheckUtils]: 6: Hoare triple {1165#true} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1165#true} is VALID [2022-04-15 01:52:22,896 INFO L290 TraceCheckUtils]: 5: Hoare triple {1165#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1165#true} is VALID [2022-04-15 01:52:22,896 INFO L272 TraceCheckUtils]: 4: Hoare triple {1165#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,896 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1165#true} {1165#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,896 INFO L290 TraceCheckUtils]: 2: Hoare triple {1165#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,896 INFO L290 TraceCheckUtils]: 1: Hoare triple {1165#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1165#true} is VALID [2022-04-15 01:52:22,896 INFO L272 TraceCheckUtils]: 0: Hoare triple {1165#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-15 01:52:22,896 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 10 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 01:52:22,897 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 01:52:22,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [791019800] [2022-04-15 01:52:22,897 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 01:52:22,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [134775615] [2022-04-15 01:52:22,897 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [134775615] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 01:52:22,897 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 01:52:22,897 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 22 [2022-04-15 01:52:22,897 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1633422901] [2022-04-15 01:52:22,897 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 01:52:22,898 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 29 [2022-04-15 01:52:22,898 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 01:52:22,898 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-15 01:52:22,942 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 01:52:22,943 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-15 01:52:22,943 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 01:52:22,943 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-15 01:52:22,943 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-15 01:52:22,944 INFO L87 Difference]: Start difference. First operand 59 states and 67 transitions. Second operand has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-15 01:52:23,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:23,960 INFO L93 Difference]: Finished difference Result 85 states and 98 transitions. [2022-04-15 01:52:23,960 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-15 01:52:23,960 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 29 [2022-04-15 01:52:23,960 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 01:52:23,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-15 01:52:23,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-15 01:52:23,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-15 01:52:23,964 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-15 01:52:23,964 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 61 transitions. [2022-04-15 01:52:24,028 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-15 01:52:24,030 INFO L225 Difference]: With dead ends: 85 [2022-04-15 01:52:24,030 INFO L226 Difference]: Without dead ends: 77 [2022-04-15 01:52:24,031 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 38 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 265 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=222, Invalid=1110, Unknown=0, NotChecked=0, Total=1332 [2022-04-15 01:52:24,031 INFO L913 BasicCegarLoop]: 15 mSDtfsCounter, 40 mSDsluCounter, 123 mSDsCounter, 0 mSdLazyCounter, 193 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 310 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 193 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 90 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 01:52:24,031 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 138 Invalid, 310 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 193 Invalid, 0 Unknown, 90 Unchecked, 0.2s Time] [2022-04-15 01:52:24,032 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-15 01:52:24,060 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 67. [2022-04-15 01:52:24,060 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 01:52:24,060 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 01:52:24,061 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 01:52:24,061 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 01:52:24,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:24,063 INFO L93 Difference]: Finished difference Result 77 states and 88 transitions. [2022-04-15 01:52:24,063 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 88 transitions. [2022-04-15 01:52:24,064 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:52:24,064 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:52:24,064 INFO L74 IsIncluded]: Start isIncluded. First operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 77 states. [2022-04-15 01:52:24,064 INFO L87 Difference]: Start difference. First operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 77 states. [2022-04-15 01:52:24,066 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:52:24,066 INFO L93 Difference]: Finished difference Result 77 states and 88 transitions. [2022-04-15 01:52:24,066 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 88 transitions. [2022-04-15 01:52:24,067 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:52:24,067 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:52:24,067 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 01:52:24,067 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 01:52:24,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 01:52:24,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 76 transitions. [2022-04-15 01:52:24,069 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 76 transitions. Word has length 29 [2022-04-15 01:52:24,069 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 01:52:24,069 INFO L478 AbstractCegarLoop]: Abstraction has 67 states and 76 transitions. [2022-04-15 01:52:24,069 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-15 01:52:24,069 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 76 transitions. [2022-04-15 01:52:24,070 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-15 01:52:24,070 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 01:52:24,070 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 01:52:24,090 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-15 01:52:24,283 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-15 01:52:24,285 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 01:52:24,285 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 01:52:24,285 INFO L85 PathProgramCache]: Analyzing trace with hash -782335822, now seen corresponding path program 1 times [2022-04-15 01:52:24,285 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 01:52:24,285 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1118462299] [2022-04-15 01:52:24,285 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:52:24,285 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 01:52:24,297 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 01:52:24,297 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [117850587] [2022-04-15 01:52:24,297 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:52:24,297 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 01:52:24,297 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 01:52:24,298 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-15 01:52:24,299 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-15 01:52:24,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:24,364 INFO L263 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-15 01:52:24,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:52:24,383 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 01:52:43,874 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 01:52:50,239 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 01:53:00,339 INFO L272 TraceCheckUtils]: 0: Hoare triple {1752#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:00,339 INFO L290 TraceCheckUtils]: 1: Hoare triple {1752#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1752#true} is VALID [2022-04-15 01:53:00,339 INFO L290 TraceCheckUtils]: 2: Hoare triple {1752#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:00,339 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1752#true} {1752#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:00,339 INFO L272 TraceCheckUtils]: 4: Hoare triple {1752#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:00,340 INFO L290 TraceCheckUtils]: 5: Hoare triple {1752#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1772#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} is VALID [2022-04-15 01:53:00,340 INFO L290 TraceCheckUtils]: 6: Hoare triple {1772#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1772#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} is VALID [2022-04-15 01:53:00,342 INFO L290 TraceCheckUtils]: 7: Hoare triple {1772#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1779#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} is VALID [2022-04-15 01:53:00,342 INFO L272 TraceCheckUtils]: 8: Hoare triple {1779#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1752#true} is VALID [2022-04-15 01:53:00,342 INFO L290 TraceCheckUtils]: 9: Hoare triple {1752#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1786#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 01:53:00,342 INFO L290 TraceCheckUtils]: 10: Hoare triple {1786#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:53:00,343 INFO L290 TraceCheckUtils]: 11: Hoare triple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:53:00,344 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} {1779#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:00,344 INFO L290 TraceCheckUtils]: 13: Hoare triple {1797#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:00,344 INFO L290 TraceCheckUtils]: 14: Hoare triple {1797#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:00,344 INFO L290 TraceCheckUtils]: 15: Hoare triple {1797#(= main_~y~0 0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:00,345 INFO L290 TraceCheckUtils]: 16: Hoare triple {1797#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:00,345 INFO L290 TraceCheckUtils]: 17: Hoare triple {1797#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:00,345 INFO L272 TraceCheckUtils]: 18: Hoare triple {1797#(= main_~y~0 0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1752#true} is VALID [2022-04-15 01:53:00,346 INFO L290 TraceCheckUtils]: 19: Hoare triple {1752#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1752#true} is VALID [2022-04-15 01:53:00,346 INFO L290 TraceCheckUtils]: 20: Hoare triple {1752#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:00,346 INFO L290 TraceCheckUtils]: 21: Hoare triple {1752#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:00,346 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1752#true} {1797#(= main_~y~0 0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:00,347 INFO L290 TraceCheckUtils]: 23: Hoare triple {1797#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:00,347 INFO L290 TraceCheckUtils]: 24: Hoare triple {1797#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:00,350 INFO L290 TraceCheckUtils]: 25: Hoare triple {1797#(= main_~y~0 0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:00,351 INFO L290 TraceCheckUtils]: 26: Hoare triple {1797#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:00,352 INFO L290 TraceCheckUtils]: 27: Hoare triple {1797#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1843#(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-15 01:53:00,352 INFO L272 TraceCheckUtils]: 28: Hoare triple {1843#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1752#true} is VALID [2022-04-15 01:53:00,352 INFO L290 TraceCheckUtils]: 29: Hoare triple {1752#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1786#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 01:53:00,353 INFO L290 TraceCheckUtils]: 30: Hoare triple {1786#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:53:00,353 INFO L290 TraceCheckUtils]: 31: Hoare triple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:53:00,354 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} {1843#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1859#(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-15 01:53:00,355 INFO L290 TraceCheckUtils]: 33: Hoare triple {1859#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1859#(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-15 01:53:02,356 WARN L290 TraceCheckUtils]: 34: Hoare triple {1859#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1866#(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-15 01:53:02,358 INFO L272 TraceCheckUtils]: 35: Hoare triple {1866#(and (= main_~y~0 0) (or (and (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~xy~0 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)))) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1870#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 01:53:02,359 INFO L290 TraceCheckUtils]: 36: Hoare triple {1870#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1874#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 01:53:02,359 INFO L290 TraceCheckUtils]: 37: Hoare triple {1874#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1753#false} is VALID [2022-04-15 01:53:02,359 INFO L290 TraceCheckUtils]: 38: Hoare triple {1753#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1753#false} is VALID [2022-04-15 01:53:02,360 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 10 proven. 11 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-15 01:53:02,360 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 01:53:09,100 INFO L290 TraceCheckUtils]: 38: Hoare triple {1753#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1753#false} is VALID [2022-04-15 01:53:09,101 INFO L290 TraceCheckUtils]: 37: Hoare triple {1874#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1753#false} is VALID [2022-04-15 01:53:09,101 INFO L290 TraceCheckUtils]: 36: Hoare triple {1870#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1874#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 01:53:09,102 INFO L272 TraceCheckUtils]: 35: Hoare triple {1890#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1870#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 01:53:09,103 INFO L290 TraceCheckUtils]: 34: Hoare triple {1894#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1890#(= (+ (* 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-15 01:53:09,103 INFO L290 TraceCheckUtils]: 33: Hoare triple {1894#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1894#(= (+ (* 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-15 01:53:09,104 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} {1901#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1894#(= (+ (* 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-15 01:53:09,105 INFO L290 TraceCheckUtils]: 31: Hoare triple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:53:09,105 INFO L290 TraceCheckUtils]: 30: Hoare triple {1911#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:53:09,105 INFO L290 TraceCheckUtils]: 29: Hoare triple {1752#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1911#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 01:53:09,105 INFO L272 TraceCheckUtils]: 28: Hoare triple {1901#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1752#true} is VALID [2022-04-15 01:53:09,106 INFO L290 TraceCheckUtils]: 27: Hoare triple {1797#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1901#(= (+ (* 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-15 01:53:09,106 INFO L290 TraceCheckUtils]: 26: Hoare triple {1797#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:09,107 INFO L290 TraceCheckUtils]: 25: Hoare triple {1797#(= main_~y~0 0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:09,107 INFO L290 TraceCheckUtils]: 24: Hoare triple {1797#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:09,108 INFO L290 TraceCheckUtils]: 23: Hoare triple {1797#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:09,108 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1752#true} {1797#(= main_~y~0 0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:09,108 INFO L290 TraceCheckUtils]: 21: Hoare triple {1752#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:09,109 INFO L290 TraceCheckUtils]: 20: Hoare triple {1752#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:09,109 INFO L290 TraceCheckUtils]: 19: Hoare triple {1752#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1752#true} is VALID [2022-04-15 01:53:09,109 INFO L272 TraceCheckUtils]: 18: Hoare triple {1797#(= main_~y~0 0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1752#true} is VALID [2022-04-15 01:53:09,109 INFO L290 TraceCheckUtils]: 17: Hoare triple {1797#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:09,110 INFO L290 TraceCheckUtils]: 16: Hoare triple {1797#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:09,110 INFO L290 TraceCheckUtils]: 15: Hoare triple {1797#(= main_~y~0 0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:09,110 INFO L290 TraceCheckUtils]: 14: Hoare triple {1797#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:09,111 INFO L290 TraceCheckUtils]: 13: Hoare triple {1797#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:09,111 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} {1963#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1797#(= main_~y~0 0)} is VALID [2022-04-15 01:53:09,112 INFO L290 TraceCheckUtils]: 11: Hoare triple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:53:09,117 INFO L290 TraceCheckUtils]: 10: Hoare triple {1911#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 01:53:09,117 INFO L290 TraceCheckUtils]: 9: Hoare triple {1752#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1911#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 01:53:09,118 INFO L272 TraceCheckUtils]: 8: Hoare triple {1963#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1752#true} is VALID [2022-04-15 01:53:09,120 INFO L290 TraceCheckUtils]: 7: Hoare triple {1979#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1963#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} is VALID [2022-04-15 01:53:09,123 INFO L290 TraceCheckUtils]: 6: Hoare triple {1979#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1979#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} is VALID [2022-04-15 01:53:09,125 INFO L290 TraceCheckUtils]: 5: Hoare triple {1752#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1979#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} is VALID [2022-04-15 01:53:09,125 INFO L272 TraceCheckUtils]: 4: Hoare triple {1752#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:09,128 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1752#true} {1752#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:09,128 INFO L290 TraceCheckUtils]: 2: Hoare triple {1752#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:09,128 INFO L290 TraceCheckUtils]: 1: Hoare triple {1752#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1752#true} is VALID [2022-04-15 01:53:09,129 INFO L272 TraceCheckUtils]: 0: Hoare triple {1752#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-15 01:53:09,130 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 12 proven. 9 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-15 01:53:09,130 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 01:53:09,130 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1118462299] [2022-04-15 01:53:09,130 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 01:53:09,130 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [117850587] [2022-04-15 01:53:09,130 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [117850587] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 01:53:09,130 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 01:53:09,130 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 18 [2022-04-15 01:53:09,130 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1432089902] [2022-04-15 01:53:09,130 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 01:53:09,131 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Word has length 39 [2022-04-15 01:53:09,133 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 01:53:09,133 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 01:53:11,170 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-15 01:53:11,171 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-15 01:53:11,171 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 01:53:11,171 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-15 01:53:11,171 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2022-04-15 01:53:11,171 INFO L87 Difference]: Start difference. First operand 67 states and 76 transitions. Second operand has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 01:53:13,618 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-15 01:53:17,676 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-15 01:53:19,702 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-15 01:53:22,278 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:53:22,279 INFO L93 Difference]: Finished difference Result 96 states and 113 transitions. [2022-04-15 01:53:22,279 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 01:53:22,279 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Word has length 39 [2022-04-15 01:53:22,279 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 01:53:22,279 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 01:53:22,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-15 01:53:22,281 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 01:53:22,282 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-15 01:53:22,282 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 49 transitions. [2022-04-15 01:53:24,322 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 48 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 01:53:24,326 INFO L225 Difference]: With dead ends: 96 [2022-04-15 01:53:24,326 INFO L226 Difference]: Without dead ends: 90 [2022-04-15 01:53:24,327 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 59 SyntacticMatches, 2 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 4.8s TimeCoverageRelationStatistics Valid=117, Invalid=433, Unknown=2, NotChecked=0, Total=552 [2022-04-15 01:53:24,327 INFO L913 BasicCegarLoop]: 12 mSDtfsCounter, 34 mSDsluCounter, 111 mSDsCounter, 0 mSdLazyCounter, 182 mSolverCounterSat, 18 mSolverCounterUnsat, 3 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 123 SdHoareTripleChecker+Invalid, 203 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 182 IncrementalHoareTripleChecker+Invalid, 3 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.2s IncrementalHoareTripleChecker+Time [2022-04-15 01:53:24,328 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 123 Invalid, 203 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 182 Invalid, 3 Unknown, 0 Unchecked, 6.2s Time] [2022-04-15 01:53:24,328 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-15 01:53:24,354 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 88. [2022-04-15 01:53:24,354 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 01:53:24,355 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 01:53:24,355 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 01:53:24,355 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 01:53:24,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:53:24,360 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2022-04-15 01:53:24,360 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 106 transitions. [2022-04-15 01:53:24,360 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:53:24,360 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:53:24,360 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 90 states. [2022-04-15 01:53:24,361 INFO L87 Difference]: Start difference. First operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 90 states. [2022-04-15 01:53:24,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:53:24,364 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2022-04-15 01:53:24,364 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 106 transitions. [2022-04-15 01:53:24,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:53:24,364 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:53:24,364 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 01:53:24,364 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 01:53:24,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 01:53:24,369 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 104 transitions. [2022-04-15 01:53:24,369 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 104 transitions. Word has length 39 [2022-04-15 01:53:24,371 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 01:53:24,371 INFO L478 AbstractCegarLoop]: Abstraction has 88 states and 104 transitions. [2022-04-15 01:53:24,372 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 01:53:24,372 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 104 transitions. [2022-04-15 01:53:24,373 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-15 01:53:24,373 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 01:53:24,373 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 01:53:24,392 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-15 01:53:24,590 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-15 01:53:24,591 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 01:53:24,591 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 01:53:24,591 INFO L85 PathProgramCache]: Analyzing trace with hash 1435422131, now seen corresponding path program 1 times [2022-04-15 01:53:24,591 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 01:53:24,591 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1364824408] [2022-04-15 01:53:24,591 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:53:24,591 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 01:53:24,605 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 01:53:24,605 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [379244912] [2022-04-15 01:53:24,605 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:53:24,605 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 01:53:24,605 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 01:53:24,606 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-15 01:53:24,607 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-15 01:53:24,647 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:53:24,648 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 01:53:24,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:53:24,659 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 01:53:25,731 INFO L272 TraceCheckUtils]: 0: Hoare triple {2444#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:25,731 INFO L290 TraceCheckUtils]: 1: Hoare triple {2444#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2444#true} is VALID [2022-04-15 01:53:25,731 INFO L290 TraceCheckUtils]: 2: Hoare triple {2444#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:25,732 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2444#true} {2444#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:25,732 INFO L272 TraceCheckUtils]: 4: Hoare triple {2444#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:25,735 INFO L290 TraceCheckUtils]: 5: Hoare triple {2444#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-15 01:53:25,735 INFO L290 TraceCheckUtils]: 6: Hoare triple {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-15 01:53:25,736 INFO L290 TraceCheckUtils]: 7: Hoare triple {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-15 01:53:25,736 INFO L272 TraceCheckUtils]: 8: Hoare triple {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2444#true} is VALID [2022-04-15 01:53:25,736 INFO L290 TraceCheckUtils]: 9: Hoare triple {2444#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2444#true} is VALID [2022-04-15 01:53:25,736 INFO L290 TraceCheckUtils]: 10: Hoare triple {2444#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:25,736 INFO L290 TraceCheckUtils]: 11: Hoare triple {2444#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:25,737 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2444#true} {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-15 01:53:25,737 INFO L290 TraceCheckUtils]: 13: Hoare triple {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-15 01:53:25,738 INFO L290 TraceCheckUtils]: 14: Hoare triple {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {2492#(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-15 01:53:25,739 INFO L290 TraceCheckUtils]: 15: Hoare triple {2492#(and (<= main_~x~0 0) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2496#(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-15 01:53:25,739 INFO L290 TraceCheckUtils]: 16: Hoare triple {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2496#(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-15 01:53:25,740 INFO L290 TraceCheckUtils]: 17: Hoare triple {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2496#(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-15 01:53:25,740 INFO L272 TraceCheckUtils]: 18: Hoare triple {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2444#true} is VALID [2022-04-15 01:53:25,740 INFO L290 TraceCheckUtils]: 19: Hoare triple {2444#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2444#true} is VALID [2022-04-15 01:53:25,740 INFO L290 TraceCheckUtils]: 20: Hoare triple {2444#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:25,740 INFO L290 TraceCheckUtils]: 21: Hoare triple {2444#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:25,750 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2444#true} {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2496#(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-15 01:53:25,751 INFO L290 TraceCheckUtils]: 23: Hoare triple {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2496#(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-15 01:53:25,752 INFO L290 TraceCheckUtils]: 24: Hoare triple {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2524#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} is VALID [2022-04-15 01:53:25,752 INFO L290 TraceCheckUtils]: 25: Hoare triple {2524#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-15 01:53:25,753 INFO L290 TraceCheckUtils]: 26: Hoare triple {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-15 01:53:25,753 INFO L290 TraceCheckUtils]: 27: Hoare triple {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-15 01:53:25,753 INFO L272 TraceCheckUtils]: 28: Hoare triple {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2444#true} is VALID [2022-04-15 01:53:25,753 INFO L290 TraceCheckUtils]: 29: Hoare triple {2444#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2444#true} is VALID [2022-04-15 01:53:25,754 INFO L290 TraceCheckUtils]: 30: Hoare triple {2444#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:25,754 INFO L290 TraceCheckUtils]: 31: Hoare triple {2444#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:25,755 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2444#true} {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-15 01:53:25,756 INFO L290 TraceCheckUtils]: 33: Hoare triple {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {2445#false} is VALID [2022-04-15 01:53:25,756 INFO L290 TraceCheckUtils]: 34: Hoare triple {2445#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2445#false} is VALID [2022-04-15 01:53:25,756 INFO L272 TraceCheckUtils]: 35: Hoare triple {2445#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2445#false} is VALID [2022-04-15 01:53:25,756 INFO L290 TraceCheckUtils]: 36: Hoare triple {2445#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2445#false} is VALID [2022-04-15 01:53:25,756 INFO L290 TraceCheckUtils]: 37: Hoare triple {2445#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2445#false} is VALID [2022-04-15 01:53:25,756 INFO L290 TraceCheckUtils]: 38: Hoare triple {2445#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2445#false} is VALID [2022-04-15 01:53:25,756 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 6 proven. 14 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-15 01:53:25,756 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 01:53:26,160 INFO L290 TraceCheckUtils]: 38: Hoare triple {2445#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2445#false} is VALID [2022-04-15 01:53:26,160 INFO L290 TraceCheckUtils]: 37: Hoare triple {2445#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2445#false} is VALID [2022-04-15 01:53:26,160 INFO L290 TraceCheckUtils]: 36: Hoare triple {2445#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2445#false} is VALID [2022-04-15 01:53:26,160 INFO L272 TraceCheckUtils]: 35: Hoare triple {2445#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2445#false} is VALID [2022-04-15 01:53:26,160 INFO L290 TraceCheckUtils]: 34: Hoare triple {2445#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2445#false} is VALID [2022-04-15 01:53:26,161 INFO L290 TraceCheckUtils]: 33: Hoare triple {2583#(<= main_~x~0 main_~X~0)} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {2445#false} is VALID [2022-04-15 01:53:26,161 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2444#true} {2583#(<= main_~x~0 main_~X~0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2583#(<= main_~x~0 main_~X~0)} is VALID [2022-04-15 01:53:26,161 INFO L290 TraceCheckUtils]: 31: Hoare triple {2444#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:26,161 INFO L290 TraceCheckUtils]: 30: Hoare triple {2444#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:26,162 INFO L290 TraceCheckUtils]: 29: Hoare triple {2444#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2444#true} is VALID [2022-04-15 01:53:26,162 INFO L272 TraceCheckUtils]: 28: Hoare triple {2583#(<= main_~x~0 main_~X~0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2444#true} is VALID [2022-04-15 01:53:26,162 INFO L290 TraceCheckUtils]: 27: Hoare triple {2583#(<= main_~x~0 main_~X~0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2583#(<= main_~x~0 main_~X~0)} is VALID [2022-04-15 01:53:26,162 INFO L290 TraceCheckUtils]: 26: Hoare triple {2583#(<= main_~x~0 main_~X~0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2583#(<= main_~x~0 main_~X~0)} is VALID [2022-04-15 01:53:26,163 INFO L290 TraceCheckUtils]: 25: Hoare triple {2608#(<= (+ main_~x~0 1) main_~X~0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2583#(<= main_~x~0 main_~X~0)} is VALID [2022-04-15 01:53:26,166 INFO L290 TraceCheckUtils]: 24: Hoare triple {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2608#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-15 01:53:26,166 INFO L290 TraceCheckUtils]: 23: Hoare triple {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-15 01:53:26,167 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2444#true} {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-15 01:53:26,167 INFO L290 TraceCheckUtils]: 21: Hoare triple {2444#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:26,167 INFO L290 TraceCheckUtils]: 20: Hoare triple {2444#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:26,167 INFO L290 TraceCheckUtils]: 19: Hoare triple {2444#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2444#true} is VALID [2022-04-15 01:53:26,167 INFO L272 TraceCheckUtils]: 18: Hoare triple {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2444#true} is VALID [2022-04-15 01:53:26,167 INFO L290 TraceCheckUtils]: 17: Hoare triple {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-15 01:53:26,168 INFO L290 TraceCheckUtils]: 16: Hoare triple {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-15 01:53:26,168 INFO L290 TraceCheckUtils]: 15: Hoare triple {2640#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-15 01:53:26,169 INFO L290 TraceCheckUtils]: 14: Hoare triple {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {2640#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} is VALID [2022-04-15 01:53:26,169 INFO L290 TraceCheckUtils]: 13: Hoare triple {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2644#(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-15 01:53:26,170 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2444#true} {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2644#(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-15 01:53:26,170 INFO L290 TraceCheckUtils]: 11: Hoare triple {2444#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:26,170 INFO L290 TraceCheckUtils]: 10: Hoare triple {2444#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:26,170 INFO L290 TraceCheckUtils]: 9: Hoare triple {2444#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2444#true} is VALID [2022-04-15 01:53:26,170 INFO L272 TraceCheckUtils]: 8: Hoare triple {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2444#true} is VALID [2022-04-15 01:53:26,170 INFO L290 TraceCheckUtils]: 7: Hoare triple {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2644#(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-15 01:53:26,171 INFO L290 TraceCheckUtils]: 6: Hoare triple {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2644#(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-15 01:53:26,172 INFO L290 TraceCheckUtils]: 5: Hoare triple {2444#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {2644#(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-15 01:53:26,172 INFO L272 TraceCheckUtils]: 4: Hoare triple {2444#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:26,172 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2444#true} {2444#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:26,172 INFO L290 TraceCheckUtils]: 2: Hoare triple {2444#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:26,172 INFO L290 TraceCheckUtils]: 1: Hoare triple {2444#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2444#true} is VALID [2022-04-15 01:53:26,172 INFO L272 TraceCheckUtils]: 0: Hoare triple {2444#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-15 01:53:26,172 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 6 proven. 14 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-15 01:53:26,172 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 01:53:26,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1364824408] [2022-04-15 01:53:26,172 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 01:53:26,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [379244912] [2022-04-15 01:53:26,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [379244912] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 01:53:26,173 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 01:53:26,173 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-15 01:53:26,173 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [17595144] [2022-04-15 01:53:26,173 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 01:53:26,173 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Word has length 39 [2022-04-15 01:53:26,173 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 01:53:26,174 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 01:53:26,219 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-15 01:53:26,219 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 01:53:26,220 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 01:53:26,220 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 01:53:26,220 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-15 01:53:26,220 INFO L87 Difference]: Start difference. First operand 88 states and 104 transitions. Second operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 01:53:26,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:53:26,559 INFO L93 Difference]: Finished difference Result 97 states and 113 transitions. [2022-04-15 01:53:26,559 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-15 01:53:26,559 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Word has length 39 [2022-04-15 01:53:26,559 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 01:53:26,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 01:53:26,560 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 54 transitions. [2022-04-15 01:53:26,561 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 01:53:26,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 54 transitions. [2022-04-15 01:53:26,562 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 54 transitions. [2022-04-15 01:53:26,607 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 01:53:26,609 INFO L225 Difference]: With dead ends: 97 [2022-04-15 01:53:26,609 INFO L226 Difference]: Without dead ends: 91 [2022-04-15 01:53:26,609 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 67 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=59, Invalid=181, Unknown=0, NotChecked=0, Total=240 [2022-04-15 01:53:26,610 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 5 mSDsluCounter, 45 mSDsCounter, 0 mSdLazyCounter, 89 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 71 SdHoareTripleChecker+Invalid, 102 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 89 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 01:53:26,610 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 71 Invalid, 102 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 89 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 01:53:26,610 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-04-15 01:53:26,639 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 83. [2022-04-15 01:53:26,639 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 01:53:26,639 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 01:53:26,639 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 01:53:26,640 INFO L87 Difference]: Start difference. First operand 91 states. Second operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 01:53:26,641 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:53:26,642 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-15 01:53:26,642 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 107 transitions. [2022-04-15 01:53:26,642 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:53:26,642 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:53:26,642 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 91 states. [2022-04-15 01:53:26,643 INFO L87 Difference]: Start difference. First operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 91 states. [2022-04-15 01:53:26,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:53:26,644 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-15 01:53:26,645 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 107 transitions. [2022-04-15 01:53:26,645 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:53:26,645 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:53:26,645 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 01:53:26,645 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 01:53:26,645 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 01:53:26,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 97 transitions. [2022-04-15 01:53:26,647 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 97 transitions. Word has length 39 [2022-04-15 01:53:26,647 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 01:53:26,647 INFO L478 AbstractCegarLoop]: Abstraction has 83 states and 97 transitions. [2022-04-15 01:53:26,647 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 01:53:26,647 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 97 transitions. [2022-04-15 01:53:26,648 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-15 01:53:26,648 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 01:53:26,648 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 01:53:26,665 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-15 01:53:26,863 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-15 01:53:26,864 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 01:53:26,864 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 01:53:26,864 INFO L85 PathProgramCache]: Analyzing trace with hash 1628716144, now seen corresponding path program 2 times [2022-04-15 01:53:26,864 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 01:53:26,864 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1459694120] [2022-04-15 01:53:26,864 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:53:26,864 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 01:53:26,875 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 01:53:26,875 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [455506725] [2022-04-15 01:53:26,875 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 01:53:26,875 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 01:53:26,875 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 01:53:26,876 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-15 01:53:26,877 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-15 01:53:26,918 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 01:53:26,918 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 01:53:26,921 INFO L263 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 01:53:26,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:53:26,938 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 01:53:27,864 INFO L272 TraceCheckUtils]: 0: Hoare triple {3121#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,864 INFO L290 TraceCheckUtils]: 1: Hoare triple {3121#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {3121#true} is VALID [2022-04-15 01:53:27,864 INFO L290 TraceCheckUtils]: 2: Hoare triple {3121#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,864 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3121#true} {3121#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,864 INFO L272 TraceCheckUtils]: 4: Hoare triple {3121#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,865 INFO L290 TraceCheckUtils]: 5: Hoare triple {3121#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-15 01:53:27,865 INFO L290 TraceCheckUtils]: 6: Hoare triple {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-15 01:53:27,866 INFO L290 TraceCheckUtils]: 7: Hoare triple {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-15 01:53:27,866 INFO L272 TraceCheckUtils]: 8: Hoare triple {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3121#true} is VALID [2022-04-15 01:53:27,866 INFO L290 TraceCheckUtils]: 9: Hoare triple {3121#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3121#true} is VALID [2022-04-15 01:53:27,866 INFO L290 TraceCheckUtils]: 10: Hoare triple {3121#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,866 INFO L290 TraceCheckUtils]: 11: Hoare triple {3121#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,867 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {3121#true} {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-15 01:53:27,867 INFO L290 TraceCheckUtils]: 13: Hoare triple {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-15 01:53:27,884 INFO L290 TraceCheckUtils]: 14: Hoare triple {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {3169#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-15 01:53:27,885 INFO L290 TraceCheckUtils]: 15: Hoare triple {3169#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-15 01:53:27,885 INFO L290 TraceCheckUtils]: 16: Hoare triple {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-15 01:53:27,887 INFO L290 TraceCheckUtils]: 17: Hoare triple {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-15 01:53:27,887 INFO L272 TraceCheckUtils]: 18: Hoare triple {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3121#true} is VALID [2022-04-15 01:53:27,887 INFO L290 TraceCheckUtils]: 19: Hoare triple {3121#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3121#true} is VALID [2022-04-15 01:53:27,887 INFO L290 TraceCheckUtils]: 20: Hoare triple {3121#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,887 INFO L290 TraceCheckUtils]: 21: Hoare triple {3121#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,888 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {3121#true} {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-15 01:53:27,888 INFO L290 TraceCheckUtils]: 23: Hoare triple {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-15 01:53:27,889 INFO L290 TraceCheckUtils]: 24: Hoare triple {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {3201#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-15 01:53:27,890 INFO L290 TraceCheckUtils]: 25: Hoare triple {3201#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-15 01:53:27,890 INFO L290 TraceCheckUtils]: 26: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-15 01:53:27,891 INFO L290 TraceCheckUtils]: 27: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-15 01:53:27,891 INFO L272 TraceCheckUtils]: 28: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3121#true} is VALID [2022-04-15 01:53:27,891 INFO L290 TraceCheckUtils]: 29: Hoare triple {3121#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3121#true} is VALID [2022-04-15 01:53:27,891 INFO L290 TraceCheckUtils]: 30: Hoare triple {3121#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,891 INFO L290 TraceCheckUtils]: 31: Hoare triple {3121#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,891 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3121#true} {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-15 01:53:27,892 INFO L290 TraceCheckUtils]: 33: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-15 01:53:27,892 INFO L290 TraceCheckUtils]: 34: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-15 01:53:27,893 INFO L290 TraceCheckUtils]: 35: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-15 01:53:27,893 INFO L290 TraceCheckUtils]: 36: Hoare triple {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-15 01:53:27,893 INFO L290 TraceCheckUtils]: 37: Hoare triple {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-15 01:53:27,894 INFO L272 TraceCheckUtils]: 38: Hoare triple {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3121#true} is VALID [2022-04-15 01:53:27,894 INFO L290 TraceCheckUtils]: 39: Hoare triple {3121#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3121#true} is VALID [2022-04-15 01:53:27,894 INFO L290 TraceCheckUtils]: 40: Hoare triple {3121#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,894 INFO L290 TraceCheckUtils]: 41: Hoare triple {3121#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:27,896 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3121#true} {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-15 01:53:27,898 INFO L290 TraceCheckUtils]: 43: Hoare triple {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {3122#false} is VALID [2022-04-15 01:53:27,899 INFO L290 TraceCheckUtils]: 44: Hoare triple {3122#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3122#false} is VALID [2022-04-15 01:53:27,899 INFO L272 TraceCheckUtils]: 45: Hoare triple {3122#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {3122#false} is VALID [2022-04-15 01:53:27,899 INFO L290 TraceCheckUtils]: 46: Hoare triple {3122#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3122#false} is VALID [2022-04-15 01:53:27,899 INFO L290 TraceCheckUtils]: 47: Hoare triple {3122#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3122#false} is VALID [2022-04-15 01:53:27,899 INFO L290 TraceCheckUtils]: 48: Hoare triple {3122#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3122#false} is VALID [2022-04-15 01:53:27,899 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 8 proven. 30 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-15 01:53:27,899 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 01:53:28,235 INFO L290 TraceCheckUtils]: 48: Hoare triple {3122#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3122#false} is VALID [2022-04-15 01:53:28,236 INFO L290 TraceCheckUtils]: 47: Hoare triple {3122#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3122#false} is VALID [2022-04-15 01:53:28,236 INFO L290 TraceCheckUtils]: 46: Hoare triple {3122#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3122#false} is VALID [2022-04-15 01:53:28,237 INFO L272 TraceCheckUtils]: 45: Hoare triple {3122#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {3122#false} is VALID [2022-04-15 01:53:28,237 INFO L290 TraceCheckUtils]: 44: Hoare triple {3122#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {3122#false} is VALID [2022-04-15 01:53:28,237 INFO L290 TraceCheckUtils]: 43: Hoare triple {3291#(<= main_~x~0 main_~X~0)} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {3122#false} is VALID [2022-04-15 01:53:28,237 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3121#true} {3291#(<= main_~x~0 main_~X~0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3291#(<= main_~x~0 main_~X~0)} is VALID [2022-04-15 01:53:28,238 INFO L290 TraceCheckUtils]: 41: Hoare triple {3121#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,238 INFO L290 TraceCheckUtils]: 40: Hoare triple {3121#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,238 INFO L290 TraceCheckUtils]: 39: Hoare triple {3121#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3121#true} is VALID [2022-04-15 01:53:28,238 INFO L272 TraceCheckUtils]: 38: Hoare triple {3291#(<= main_~x~0 main_~X~0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3121#true} is VALID [2022-04-15 01:53:28,238 INFO L290 TraceCheckUtils]: 37: Hoare triple {3291#(<= main_~x~0 main_~X~0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3291#(<= main_~x~0 main_~X~0)} is VALID [2022-04-15 01:53:28,238 INFO L290 TraceCheckUtils]: 36: Hoare triple {3291#(<= main_~x~0 main_~X~0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3291#(<= main_~x~0 main_~X~0)} is VALID [2022-04-15 01:53:28,239 INFO L290 TraceCheckUtils]: 35: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {3291#(<= main_~x~0 main_~X~0)} is VALID [2022-04-15 01:53:28,239 INFO L290 TraceCheckUtils]: 34: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-15 01:53:28,239 INFO L290 TraceCheckUtils]: 33: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-15 01:53:28,240 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3121#true} {3316#(<= (+ main_~x~0 1) main_~X~0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-15 01:53:28,240 INFO L290 TraceCheckUtils]: 31: Hoare triple {3121#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,240 INFO L290 TraceCheckUtils]: 30: Hoare triple {3121#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,240 INFO L290 TraceCheckUtils]: 29: Hoare triple {3121#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3121#true} is VALID [2022-04-15 01:53:28,240 INFO L272 TraceCheckUtils]: 28: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3121#true} is VALID [2022-04-15 01:53:28,241 INFO L290 TraceCheckUtils]: 27: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-15 01:53:28,241 INFO L290 TraceCheckUtils]: 26: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-15 01:53:28,241 INFO L290 TraceCheckUtils]: 25: Hoare triple {3347#(<= (+ main_~x~0 2) main_~X~0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-15 01:53:28,242 INFO L290 TraceCheckUtils]: 24: Hoare triple {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {3347#(<= (+ main_~x~0 2) main_~X~0)} is VALID [2022-04-15 01:53:28,243 INFO L290 TraceCheckUtils]: 23: Hoare triple {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-15 01:53:28,243 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {3121#true} {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-15 01:53:28,243 INFO L290 TraceCheckUtils]: 21: Hoare triple {3121#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,243 INFO L290 TraceCheckUtils]: 20: Hoare triple {3121#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,243 INFO L290 TraceCheckUtils]: 19: Hoare triple {3121#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3121#true} is VALID [2022-04-15 01:53:28,243 INFO L272 TraceCheckUtils]: 18: Hoare triple {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3121#true} is VALID [2022-04-15 01:53:28,244 INFO L290 TraceCheckUtils]: 17: Hoare triple {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-15 01:53:28,244 INFO L290 TraceCheckUtils]: 16: Hoare triple {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-15 01:53:28,245 INFO L290 TraceCheckUtils]: 15: Hoare triple {3379#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-15 01:53:28,245 INFO L290 TraceCheckUtils]: 14: Hoare triple {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {3379#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-15 01:53:28,246 INFO L290 TraceCheckUtils]: 13: Hoare triple {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {3383#(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-15 01:53:28,246 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {3121#true} {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3383#(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-15 01:53:28,246 INFO L290 TraceCheckUtils]: 11: Hoare triple {3121#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,247 INFO L290 TraceCheckUtils]: 10: Hoare triple {3121#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,247 INFO L290 TraceCheckUtils]: 9: Hoare triple {3121#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3121#true} is VALID [2022-04-15 01:53:28,247 INFO L272 TraceCheckUtils]: 8: Hoare triple {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3121#true} is VALID [2022-04-15 01:53:28,247 INFO L290 TraceCheckUtils]: 7: Hoare triple {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 20) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3383#(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-15 01:53:28,247 INFO L290 TraceCheckUtils]: 6: Hoare triple {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3383#(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-15 01:53:28,248 INFO L290 TraceCheckUtils]: 5: Hoare triple {3121#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {3383#(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-15 01:53:28,248 INFO L272 TraceCheckUtils]: 4: Hoare triple {3121#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,248 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3121#true} {3121#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,248 INFO L290 TraceCheckUtils]: 2: Hoare triple {3121#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,249 INFO L290 TraceCheckUtils]: 1: Hoare triple {3121#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {3121#true} is VALID [2022-04-15 01:53:28,249 INFO L272 TraceCheckUtils]: 0: Hoare triple {3121#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-15 01:53:28,249 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 8 proven. 30 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-15 01:53:28,249 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 01:53:28,249 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1459694120] [2022-04-15 01:53:28,249 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 01:53:28,249 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [455506725] [2022-04-15 01:53:28,249 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [455506725] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 01:53:28,249 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 01:53:28,249 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-15 01:53:28,249 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [145254989] [2022-04-15 01:53:28,250 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 01:53:28,250 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Word has length 49 [2022-04-15 01:53:28,252 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 01:53:28,252 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 01:53:28,301 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 01:53:28,301 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 01:53:28,301 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 01:53:28,302 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 01:53:28,302 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-04-15 01:53:28,303 INFO L87 Difference]: Start difference. First operand 83 states and 97 transitions. Second operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 01:53:28,860 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:53:28,860 INFO L93 Difference]: Finished difference Result 108 states and 127 transitions. [2022-04-15 01:53:28,860 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-15 01:53:28,861 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Word has length 49 [2022-04-15 01:53:28,861 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 01:53:28,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 01:53:28,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 61 transitions. [2022-04-15 01:53:28,863 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 01:53:28,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 61 transitions. [2022-04-15 01:53:28,864 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 61 transitions. [2022-04-15 01:53:28,916 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-15 01:53:28,918 INFO L225 Difference]: With dead ends: 108 [2022-04-15 01:53:28,918 INFO L226 Difference]: Without dead ends: 102 [2022-04-15 01:53:28,918 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 85 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=64, Invalid=208, Unknown=0, NotChecked=0, Total=272 [2022-04-15 01:53:28,918 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 10 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 180 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 191 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 180 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 01:53:28,918 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 144 Invalid, 191 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 180 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 01:53:28,919 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-04-15 01:53:28,974 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 89. [2022-04-15 01:53:28,974 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 01:53:28,975 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 01:53:28,976 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 01:53:28,977 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 01:53:28,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:53:28,981 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-15 01:53:28,981 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 121 transitions. [2022-04-15 01:53:28,981 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:53:28,981 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:53:28,988 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 102 states. [2022-04-15 01:53:28,991 INFO L87 Difference]: Start difference. First operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 102 states. [2022-04-15 01:53:28,993 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 01:53:28,993 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-15 01:53:28,993 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 121 transitions. [2022-04-15 01:53:28,994 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 01:53:28,994 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 01:53:28,994 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 01:53:28,994 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 01:53:28,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 01:53:28,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 105 transitions. [2022-04-15 01:53:28,997 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 105 transitions. Word has length 49 [2022-04-15 01:53:28,997 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 01:53:28,997 INFO L478 AbstractCegarLoop]: Abstraction has 89 states and 105 transitions. [2022-04-15 01:53:28,997 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 01:53:28,997 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 105 transitions. [2022-04-15 01:53:28,999 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-15 01:53:28,999 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 01:53:28,999 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 01:53:29,019 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-15 01:53:29,219 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-15 01:53:29,220 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 01:53:29,220 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 01:53:29,220 INFO L85 PathProgramCache]: Analyzing trace with hash 1136439088, now seen corresponding path program 3 times [2022-04-15 01:53:29,220 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 01:53:29,220 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1355086076] [2022-04-15 01:53:29,221 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 01:53:29,221 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 01:53:29,230 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 01:53:29,231 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1997849041] [2022-04-15 01:53:29,231 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-15 01:53:29,231 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 01:53:29,231 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 01:53:29,232 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 01:53:29,233 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-15 01:53:29,814 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-15 01:53:29,815 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 01:53:29,817 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-15 01:53:29,845 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 01:53:29,846 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 01:53:46,981 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 01:53:57,014 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 01:54:01,909 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 01:54:08,029 WARN L833 $PredicateComparison]: unable to prove that (let ((.cse3 (+ c_main_~X~0 1)) (.cse2 (+ (* (- 1) c_main_~Y~0) (div (+ c_main_~v~0 c_main_~X~0) 2) (* c_main_~X~0 c_main_~y~0))) (.cse0 (= c_main_~Y~0 0)) (.cse4 (= (mod (+ (* 2 c_main_~X~0 c_main_~y~0) c_main_~v~0 c_main_~X~0) 2) 0))) (or (let ((.cse1 (div .cse2 c_main_~Y~0))) (and (not .cse0) (not (<= .cse1 c_main_~X~0)) (= (mod .cse2 c_main_~Y~0) 0) (= c_main_~xy~0 (* c_main_~y~0 .cse1)) (<= .cse1 .cse3) (= c_main_~yx~0 (* c_main_~Y~0 .cse1)) .cse4)) (and (let ((.cse6 (= c_main_~y~0 0))) (or (let ((.cse5 (div c_main_~xy~0 c_main_~y~0))) (and (<= .cse5 .cse3) (= (mod c_main_~xy~0 c_main_~y~0) 0) (not .cse6) (< c_main_~X~0 .cse5))) (and .cse6 (= c_main_~xy~0 0)))) (= 0 .cse2) .cse0 (= c_main_~yx~0 0) .cse4))) is different from false