/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_unwindbound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 23:49:53,807 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 23:49:53,808 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 23:49:53,838 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 23:49:53,838 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 23:49:53,839 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 23:49:53,841 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 23:49:53,843 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 23:49:53,844 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 23:49:53,847 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 23:49:53,847 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 23:49:53,848 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 23:49:53,848 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 23:49:53,849 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 23:49:53,849 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 23:49:53,850 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 23:49:53,850 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 23:49:53,850 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 23:49:53,851 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 23:49:53,852 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 23:49:53,853 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 23:49:53,855 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 23:49:53,856 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 23:49:53,859 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 23:49:53,860 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 23:49:53,864 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 23:49:53,864 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 23:49:53,864 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 23:49:53,864 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 23:49:53,865 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 23:49:53,865 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 23:49:53,865 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 23:49:53,866 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 23:49:53,866 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 23:49:53,879 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 23:49:53,880 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 23:49:53,880 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 23:49:53,880 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 23:49:53,880 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 23:49:53,880 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 23:49:53,881 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 23:49:53,881 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 23:49:53,882 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-07 23:49:53,908 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 23:49:53,908 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 23:49:53,909 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-07 23:49:53,909 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-07 23:49:53,909 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-07 23:49:53,910 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-07 23:49:53,910 INFO L138 SettingsManager]: * Use SBE=true [2022-04-07 23:49:53,910 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 23:49:53,910 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 23:49:53,910 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 23:49:53,910 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 23:49:53,910 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 23:49:53,910 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 23:49:53,910 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 23:49:53,910 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 23:49:53,910 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 23:49:53,911 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 23:49:53,911 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 23:49:53,911 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 23:49:53,911 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 23:49:53,911 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 23:49:53,911 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-07 23:49:53,911 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-07 23:49:53,911 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 23:49:53,912 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-07 23:49:53,912 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-07 23:49:53,912 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-07 23:49:53,912 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-07 23:49:53,912 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 23:49:53,912 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-07 23:49:54,065 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 23:49:54,078 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 23:49:54,079 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 23:49:54,080 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 23:49:54,081 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 23:49:54,082 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound50.c [2022-04-07 23:49:54,120 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c2245b6db/d4b24867e9624b14ab04ec56764427fc/FLAG103709eaf [2022-04-07 23:49:54,488 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 23:49:54,488 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound50.c [2022-04-07 23:49:54,492 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c2245b6db/d4b24867e9624b14ab04ec56764427fc/FLAG103709eaf [2022-04-07 23:49:54,928 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c2245b6db/d4b24867e9624b14ab04ec56764427fc [2022-04-07 23:49:54,930 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 23:49:54,931 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 23:49:54,932 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 23:49:54,932 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 23:49:54,943 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 23:49:54,944 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 11:49:54" (1/1) ... [2022-04-07 23:49:54,945 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7153f38a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:49:54, skipping insertion in model container [2022-04-07 23:49:54,945 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 11:49:54" (1/1) ... [2022-04-07 23:49:54,950 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 23:49:54,968 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 23:49:55,158 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound50.c[597,610] [2022-04-07 23:49:55,183 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 23:49:55,194 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 23:49:55,202 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound50.c[597,610] [2022-04-07 23:49:55,206 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 23:49:55,215 INFO L208 MainTranslator]: Completed translation [2022-04-07 23:49:55,215 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:49:55 WrapperNode [2022-04-07 23:49:55,215 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 23:49:55,216 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 23:49:55,216 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 23:49:55,217 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 23:49:55,223 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:49:55" (1/1) ... [2022-04-07 23:49:55,223 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:49:55" (1/1) ... [2022-04-07 23:49:55,228 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:49:55" (1/1) ... [2022-04-07 23:49:55,228 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:49:55" (1/1) ... [2022-04-07 23:49:55,232 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:49:55" (1/1) ... [2022-04-07 23:49:55,234 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:49:55" (1/1) ... [2022-04-07 23:49:55,235 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:49:55" (1/1) ... [2022-04-07 23:49:55,236 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 23:49:55,237 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 23:49:55,237 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 23:49:55,237 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 23:49:55,238 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:49:55" (1/1) ... [2022-04-07 23:49:55,243 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 23:49:55,249 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:49:55,259 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 23:49:55,281 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 23:49:55,303 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 23:49:55,303 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 23:49:55,304 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 23:49:55,304 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 23:49:55,304 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 23:49:55,304 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 23:49:55,304 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 23:49:55,304 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 23:49:55,304 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 23:49:55,304 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 23:49:55,304 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 23:49:55,304 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 23:49:55,304 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 23:49:55,305 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 23:49:55,305 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 23:49:55,305 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 23:49:55,305 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 23:49:55,305 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 23:49:55,305 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 23:49:55,305 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 23:49:55,349 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 23:49:55,350 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 23:49:55,496 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 23:49:55,513 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 23:49:55,513 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-07 23:49:55,514 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 11:49:55 BoogieIcfgContainer [2022-04-07 23:49:55,514 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 23:49:55,515 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 23:49:55,515 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 23:49:55,522 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 23:49:55,526 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 11:49:55" (1/1) ... [2022-04-07 23:49:55,528 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-07 23:49:55,556 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 11:49:55 BasicIcfg [2022-04-07 23:49:55,556 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 23:49:55,557 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 23:49:55,557 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 23:49:55,561 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 23:49:55,561 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 11:49:54" (1/4) ... [2022-04-07 23:49:55,562 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2a8fd6c4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 11:49:55, skipping insertion in model container [2022-04-07 23:49:55,562 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 11:49:55" (2/4) ... [2022-04-07 23:49:55,562 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2a8fd6c4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 11:49:55, skipping insertion in model container [2022-04-07 23:49:55,562 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 11:49:55" (3/4) ... [2022-04-07 23:49:55,562 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2a8fd6c4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 11:49:55, skipping insertion in model container [2022-04-07 23:49:55,562 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 11:49:55" (4/4) ... [2022-04-07 23:49:55,563 INFO L111 eAbstractionObserver]: Analyzing ICFG bresenham-ll_unwindbound50.cqvasr [2022-04-07 23:49:55,567 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-07 23:49:55,568 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 23:49:55,610 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 23:49:55,614 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-07 23:49:55,614 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 23:49:55,627 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-07 23:49:55,631 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-07 23:49:55,631 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:49:55,631 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 23:49:55,632 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:49:55,635 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:49:55,636 INFO L85 PathProgramCache]: Analyzing trace with hash -498253564, now seen corresponding path program 1 times [2022-04-07 23:49:55,642 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:49:55,642 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2026332763] [2022-04-07 23:49:55,643 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:49:55,643 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:49:55,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:49:55,749 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 23:49:55,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:49:55,771 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-07 23:49:55,771 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-07 23:49:55,771 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-07 23:49:55,773 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-07 23:49:55,773 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-07 23:49:55,774 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-07 23:49:55,774 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-07 23:49:55,774 INFO L272 TraceCheckUtils]: 4: Hoare triple {28#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28#true} is VALID [2022-04-07 23:49:55,774 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-07 23:49:55,777 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-07 23:49:55,777 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-07 23:49:55,778 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-07 23:49:55,778 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-07 23:49:55,778 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-07 23:49:55,778 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-07 23:49:55,779 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-07 23:49:55,779 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:49:55,779 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2026332763] [2022-04-07 23:49:55,780 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2026332763] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 23:49:55,780 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 23:49:55,780 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 23:49:55,781 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1829423868] [2022-04-07 23:49:55,782 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 23:49:55,785 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-07 23:49:55,786 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:49:55,788 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-07 23:49:55,812 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-07 23:49:55,812 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 23:49:55,812 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:49:55,834 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 23:49:55,835 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 23:49:55,837 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-07 23:49:55,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:55,952 INFO L93 Difference]: Finished difference Result 45 states and 58 transitions. [2022-04-07 23:49:55,952 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 23:49:55,953 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-07 23:49:55,953 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:49:55,954 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-07 23:49:55,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-07 23:49:55,962 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-07 23:49:55,968 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-07 23:49:55,968 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 58 transitions. [2022-04-07 23:49:56,018 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-07 23:49:56,023 INFO L225 Difference]: With dead ends: 45 [2022-04-07 23:49:56,023 INFO L226 Difference]: Without dead ends: 21 [2022-04-07 23:49:56,025 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-07 23:49:56,027 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-07 23:49:56,028 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-07 23:49:56,043 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states. [2022-04-07 23:49:56,058 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 20. [2022-04-07 23:49:56,058 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:49:56,059 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-07 23:49:56,059 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-07 23:49:56,060 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-07 23:49:56,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:56,064 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-07 23:49:56,064 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-07 23:49:56,064 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:49:56,064 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:49:56,064 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-07 23:49:56,065 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-07 23:49:56,066 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:56,067 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-07 23:49:56,067 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-07 23:49:56,067 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:49:56,067 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:49:56,067 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:49:56,067 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:49:56,068 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-07 23:49:56,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 23 transitions. [2022-04-07 23:49:56,070 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 23 transitions. Word has length 12 [2022-04-07 23:49:56,070 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:49:56,070 INFO L478 AbstractCegarLoop]: Abstraction has 20 states and 23 transitions. [2022-04-07 23:49:56,070 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-07 23:49:56,070 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 23 transitions. [2022-04-07 23:49:56,071 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-07 23:49:56,071 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:49:56,071 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 23:49:56,071 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 23:49:56,071 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:49:56,072 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:49:56,072 INFO L85 PathProgramCache]: Analyzing trace with hash -467747580, now seen corresponding path program 1 times [2022-04-07 23:49:56,072 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:49:56,072 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [686916224] [2022-04-07 23:49:56,072 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:49:56,072 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:49:56,085 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:49:56,086 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [485054183] [2022-04-07 23:49:56,086 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:49:56,086 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:49:56,086 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:49:56,089 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 23:49:56,090 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 23:49:56,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:49:56,163 INFO L263 TraceCheckSpWp]: Trace formula consists of 79 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-07 23:49:56,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:49:56,174 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:49:56,372 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-07 23:49:56,372 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-07 23:49:56,373 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-07 23:49:56,373 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-07 23:49:56,373 INFO L272 TraceCheckUtils]: 4: Hoare triple {164#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#true} is VALID [2022-04-07 23:49:56,374 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-07 23:49:56,376 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-07 23:49:56,377 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:49:56,378 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-07 23:49:56,378 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-07 23:49:56,379 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-07 23:49:56,379 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-07 23:49:56,379 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-07 23:49:56,379 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 23:49:56,380 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:49:56,380 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [686916224] [2022-04-07 23:49:56,380 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:49:56,381 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [485054183] [2022-04-07 23:49:56,383 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [485054183] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 23:49:56,383 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 23:49:56,383 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-07 23:49:56,384 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [176986655] [2022-04-07 23:49:56,385 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 23:49:56,385 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-07 23:49:56,386 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:49:56,386 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-07 23:49:56,396 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-07 23:49:56,396 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 23:49:56,396 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:49:56,397 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 23:49:56,397 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-07 23:49:56,398 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-07 23:49:56,561 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:56,562 INFO L93 Difference]: Finished difference Result 34 states and 40 transitions. [2022-04-07 23:49:56,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 23:49:56,562 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-07 23:49:56,563 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:49:56,563 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-07 23:49:56,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2022-04-07 23:49:56,566 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-07 23:49:56,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2022-04-07 23:49:56,570 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 40 transitions. [2022-04-07 23:49:56,599 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-07 23:49:56,601 INFO L225 Difference]: With dead ends: 34 [2022-04-07 23:49:56,601 INFO L226 Difference]: Without dead ends: 29 [2022-04-07 23:49:56,602 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-07 23:49:56,603 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-07 23:49:56,604 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-07 23:49:56,605 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-07 23:49:56,610 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 28. [2022-04-07 23:49:56,611 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:49:56,612 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-07 23:49:56,612 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-07 23:49:56,612 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-07 23:49:56,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:56,614 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2022-04-07 23:49:56,614 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2022-04-07 23:49:56,615 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:49:56,615 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:49:56,615 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-07 23:49:56,617 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-07 23:49:56,620 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:56,620 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2022-04-07 23:49:56,620 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2022-04-07 23:49:56,621 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:49:56,621 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:49:56,621 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:49:56,621 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:49:56,622 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-07 23:49:56,624 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 31 transitions. [2022-04-07 23:49:56,624 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 31 transitions. Word has length 12 [2022-04-07 23:49:56,624 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:49:56,624 INFO L478 AbstractCegarLoop]: Abstraction has 28 states and 31 transitions. [2022-04-07 23:49:56,625 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-07 23:49:56,625 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2022-04-07 23:49:56,626 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-07 23:49:56,626 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:49:56,626 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-07 23:49:56,643 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-07 23:49:56,843 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:49:56,843 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:49:56,844 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:49:56,844 INFO L85 PathProgramCache]: Analyzing trace with hash 1909475431, now seen corresponding path program 1 times [2022-04-07 23:49:56,844 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:49:56,844 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1297471152] [2022-04-07 23:49:56,844 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:49:56,845 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:49:56,863 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:49:56,863 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1130112471] [2022-04-07 23:49:56,863 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:49:56,864 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:49:56,864 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:49:56,865 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 23:49:56,866 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-07 23:49:56,904 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:49:56,905 INFO L263 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-07 23:49:56,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:49:56,914 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:49:57,157 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-07 23:49:57,158 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-07 23:49:57,158 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-07 23:49:57,158 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-07 23:49:57,158 INFO L272 TraceCheckUtils]: 4: Hoare triple {352#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-07 23:49:57,160 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-07 23:49:57,160 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-07 23:49:57,161 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:49:57,161 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-07 23:49:57,161 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-07 23:49:57,162 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-07 23:49:57,162 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-07 23:49:57,162 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-07 23:49:57,163 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-07 23:49:57,164 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-07 23:49:57,164 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-07 23:49:57,165 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-07 23:49:57,165 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:49:57,167 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-07 23:49:57,169 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-07 23:49:57,169 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-07 23:49:57,169 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-07 23:49:57,169 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-07 23:49:57,170 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:49:57,326 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-07 23:49:57,329 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-07 23:49:57,329 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-07 23:49:57,330 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-07 23:49:57,331 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {435#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} is VALID [2022-04-07 23:49:57,332 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-07 23:49:57,394 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-07 23:49:57,395 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-07 23:49:57,395 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-07 23:49:57,396 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-07 23:49:57,396 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-07 23:49:57,397 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-07 23:49:57,397 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-07 23:49:57,397 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-07 23:49:57,399 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:49:57,400 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-07 23:49:57,401 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-07 23:49:57,401 INFO L272 TraceCheckUtils]: 4: Hoare triple {352#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#true} is VALID [2022-04-07 23:49:57,401 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-07 23:49:57,401 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-07 23:49:57,402 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-07 23:49:57,402 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-07 23:49:57,402 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-07 23:49:57,402 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:49:57,402 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1297471152] [2022-04-07 23:49:57,402 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:49:57,402 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1130112471] [2022-04-07 23:49:57,403 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1130112471] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:49:57,403 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:49:57,403 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-07 23:49:57,403 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [266226260] [2022-04-07 23:49:57,403 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:49:57,403 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-07 23:49:57,404 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:49:57,404 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-07 23:49:57,424 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-07 23:49:57,424 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-07 23:49:57,425 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:49:57,425 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-07 23:49:57,425 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-07 23:49:57,425 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-07 23:49:57,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:57,841 INFO L93 Difference]: Finished difference Result 45 states and 52 transitions. [2022-04-07 23:49:57,841 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-07 23:49:57,841 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-07 23:49:57,842 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:49:57,842 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-07 23:49:57,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-07 23:49:57,843 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-07 23:49:57,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-07 23:49:57,845 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 49 transitions. [2022-04-07 23:49:57,890 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-07 23:49:57,891 INFO L225 Difference]: With dead ends: 45 [2022-04-07 23:49:57,891 INFO L226 Difference]: Without dead ends: 38 [2022-04-07 23:49:57,891 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-07 23:49:57,895 INFO L913 BasicCegarLoop]: 15 mSDtfsCounter, 20 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-04-07 23:49:57,896 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.2s Time] [2022-04-07 23:49:57,896 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-07 23:49:57,901 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 36. [2022-04-07 23:49:57,901 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:49:57,901 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-07 23:49:57,901 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-07 23:49:57,901 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-07 23:49:57,903 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:57,903 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-07 23:49:57,903 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-07 23:49:57,904 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:49:57,904 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:49:57,904 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-07 23:49:57,904 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-07 23:49:57,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:57,905 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-07 23:49:57,905 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-07 23:49:57,906 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:49:57,906 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:49:57,906 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:49:57,906 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:49:57,906 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-07 23:49:57,907 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 40 transitions. [2022-04-07 23:49:57,907 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 40 transitions. Word has length 22 [2022-04-07 23:49:57,907 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:49:57,907 INFO L478 AbstractCegarLoop]: Abstraction has 36 states and 40 transitions. [2022-04-07 23:49:57,908 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-07 23:49:57,908 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 40 transitions. [2022-04-07 23:49:57,908 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-07 23:49:57,908 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:49:57,908 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-07 23:49:57,943 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-07 23:49:58,120 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-07 23:49:58,121 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:49:58,121 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:49:58,121 INFO L85 PathProgramCache]: Analyzing trace with hash 1519292561, now seen corresponding path program 1 times [2022-04-07 23:49:58,121 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:49:58,121 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [951607502] [2022-04-07 23:49:58,121 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:49:58,122 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:49:58,134 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:49:58,134 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2008665925] [2022-04-07 23:49:58,135 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:49:58,135 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:49:58,135 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:49:58,172 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 23:49:58,173 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-07 23:49:58,209 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:49:58,210 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 23:49:58,222 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:49:58,223 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:49:58,329 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-07 23:49:58,330 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-07 23:49:58,335 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-07 23:49:58,335 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-07 23:49:58,336 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-07 23:49:58,336 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-07 23:49:58,336 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-07 23:49:58,337 INFO L290 TraceCheckUtils]: 7: Hoare triple {712#(<= ~counter~0 1)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {712#(<= ~counter~0 1)} is VALID [2022-04-07 23:49:58,338 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-07 23:49:58,338 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-07 23:49:58,338 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-07 23:49:58,338 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-07 23:49:58,339 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-07 23:49:58,339 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-07 23:49:58,340 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-07 23:49:58,341 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-07 23:49:58,342 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-07 23:49:58,342 INFO L290 TraceCheckUtils]: 17: Hoare triple {743#(<= |main_#t~post6| 1)} [74] L31-1-->L31-4: Formula: (not (< |v_main_#t~post6_3| 50)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {689#false} is VALID [2022-04-07 23:49:58,342 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-07 23:49:58,343 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-07 23:49:58,343 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-07 23:49:58,343 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-07 23:49:58,343 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-07 23:49:58,343 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-07 23:49:58,343 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:49:58,463 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-07 23:49:58,463 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-07 23:49:58,463 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-07 23:49:58,463 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-07 23:49:58,463 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-07 23:49:58,465 INFO L290 TraceCheckUtils]: 17: Hoare triple {777#(< |main_#t~post6| 50)} [74] L31-1-->L31-4: Formula: (not (< |v_main_#t~post6_3| 50)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {689#false} is VALID [2022-04-07 23:49:58,465 INFO L290 TraceCheckUtils]: 16: Hoare triple {781#(< ~counter~0 50)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {777#(< |main_#t~post6| 50)} is VALID [2022-04-07 23:49:58,466 INFO L290 TraceCheckUtils]: 15: Hoare triple {781#(< ~counter~0 50)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {781#(< ~counter~0 50)} is VALID [2022-04-07 23:49:58,466 INFO L290 TraceCheckUtils]: 14: Hoare triple {781#(< ~counter~0 50)} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {781#(< ~counter~0 50)} is VALID [2022-04-07 23:49:58,468 INFO L290 TraceCheckUtils]: 13: Hoare triple {781#(< ~counter~0 50)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {781#(< ~counter~0 50)} is VALID [2022-04-07 23:49:58,469 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {688#true} {781#(< ~counter~0 50)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {781#(< ~counter~0 50)} is VALID [2022-04-07 23:49:58,469 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-07 23:49:58,469 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-07 23:49:58,469 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-07 23:49:58,469 INFO L272 TraceCheckUtils]: 8: Hoare triple {781#(< ~counter~0 50)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {688#true} is VALID [2022-04-07 23:49:58,469 INFO L290 TraceCheckUtils]: 7: Hoare triple {781#(< ~counter~0 50)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {781#(< ~counter~0 50)} is VALID [2022-04-07 23:49:58,470 INFO L290 TraceCheckUtils]: 6: Hoare triple {812#(< ~counter~0 49)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {781#(< ~counter~0 50)} is VALID [2022-04-07 23:49:58,471 INFO L290 TraceCheckUtils]: 5: Hoare triple {812#(< ~counter~0 49)} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {812#(< ~counter~0 49)} is VALID [2022-04-07 23:49:58,471 INFO L272 TraceCheckUtils]: 4: Hoare triple {812#(< ~counter~0 49)} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {812#(< ~counter~0 49)} is VALID [2022-04-07 23:49:58,472 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {812#(< ~counter~0 49)} {688#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {812#(< ~counter~0 49)} is VALID [2022-04-07 23:49:58,472 INFO L290 TraceCheckUtils]: 2: Hoare triple {812#(< ~counter~0 49)} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {812#(< ~counter~0 49)} is VALID [2022-04-07 23:49:58,473 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 49)} is VALID [2022-04-07 23:49:58,473 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-07 23:49:58,473 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-07 23:49:58,473 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:49:58,473 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [951607502] [2022-04-07 23:49:58,473 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:49:58,473 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2008665925] [2022-04-07 23:49:58,473 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2008665925] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:49:58,473 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:49:58,473 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-07 23:49:58,474 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1192036778] [2022-04-07 23:49:58,474 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:49:58,474 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-07 23:49:58,475 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:49:58,475 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-07 23:49:58,500 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-07 23:49:58,500 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 23:49:58,500 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:49:58,501 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 23:49:58,501 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-07 23:49:58,501 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-07 23:49:58,662 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:58,662 INFO L93 Difference]: Finished difference Result 77 states and 85 transitions. [2022-04-07 23:49:58,662 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-07 23:49:58,662 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-07 23:49:58,662 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:49:58,662 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-07 23:49:58,664 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 76 transitions. [2022-04-07 23:49:58,664 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-07 23:49:58,666 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 76 transitions. [2022-04-07 23:49:58,666 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 76 transitions. [2022-04-07 23:49:58,700 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-07 23:49:58,702 INFO L225 Difference]: With dead ends: 77 [2022-04-07 23:49:58,702 INFO L226 Difference]: Without dead ends: 71 [2022-04-07 23:49:58,702 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-07 23:49:58,703 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 47 mSDsluCounter, 91 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s 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.0s IncrementalHoareTripleChecker+Time [2022-04-07 23:49:58,703 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.0s Time] [2022-04-07 23:49:58,704 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-07 23:49:58,715 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 59. [2022-04-07 23:49:58,715 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:49:58,716 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-07 23:49:58,716 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-07 23:49:58,716 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-07 23:49:58,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:58,718 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-07 23:49:58,718 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 77 transitions. [2022-04-07 23:49:58,719 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:49:58,719 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:49:58,719 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-07 23:49:58,719 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-07 23:49:58,725 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:49:58,725 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-07 23:49:58,725 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 77 transitions. [2022-04-07 23:49:58,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:49:58,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:49:58,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:49:58,726 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:49:58,726 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-07 23:49:58,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 67 transitions. [2022-04-07 23:49:58,727 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 67 transitions. Word has length 23 [2022-04-07 23:49:58,727 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:49:58,727 INFO L478 AbstractCegarLoop]: Abstraction has 59 states and 67 transitions. [2022-04-07 23:49:58,728 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-07 23:49:58,728 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 67 transitions. [2022-04-07 23:49:58,728 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-07 23:49:58,728 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:49:58,728 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-07 23:49:58,745 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-07 23:49:58,928 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:49:58,929 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:49:58,929 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:49:58,929 INFO L85 PathProgramCache]: Analyzing trace with hash -2036751370, now seen corresponding path program 1 times [2022-04-07 23:49:58,929 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:49:58,929 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [265139261] [2022-04-07 23:49:58,930 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:49:58,930 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:49:58,949 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:49:58,949 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1942271240] [2022-04-07 23:49:58,949 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:49:58,949 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:49:58,949 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:49:58,950 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 23:49:58,951 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-07 23:49:59,002 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:49:59,003 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-07 23:49:59,018 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:49:59,019 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:49:59,429 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-07 23:49:59,429 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-07 23:49:59,430 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-07 23:49:59,430 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-07 23:49:59,430 INFO L272 TraceCheckUtils]: 4: Hoare triple {1165#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-07 23:49:59,432 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-07 23:49:59,439 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-07 23:49:59,440 INFO L290 TraceCheckUtils]: 7: Hoare triple {1185#(and (= main_~x~0 0) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1185#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-07 23:49:59,440 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-07 23:49:59,440 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-07 23:49:59,440 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-07 23:49:59,440 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-07 23:49:59,441 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-07 23:49:59,442 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-07 23:49:59,442 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-07 23:49:59,442 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-07 23:49:59,443 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-07 23:49:59,443 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:49:59,443 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-07 23:49:59,444 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-07 23:49:59,444 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-07 23:49:59,444 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-07 23:49:59,446 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-07 23:49:59,446 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-07 23:49:59,447 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-07 23:49:59,448 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-07 23:49:59,448 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-07 23:49:59,449 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-07 23:49:59,449 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-07 23:49:59,449 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-07 23:49:59,449 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:50:00,109 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-07 23:50:00,110 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-07 23:50:00,110 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-07 23:50:00,111 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-07 23:50:00,125 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-07 23:50:00,126 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-07 23:50:00,127 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-07 23:50:00,127 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-07 23:50:00,128 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-07 23:50:00,130 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-07 23:50:00,130 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-07 23:50:00,131 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:50:00,132 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-07 23:50:00,134 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-07 23:50:00,135 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-07 23:50:00,136 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-07 23:50:00,137 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-07 23:50:00,137 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-07 23:50:00,137 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-07 23:50:00,137 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-07 23:50:00,137 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-07 23:50:00,137 INFO L290 TraceCheckUtils]: 7: Hoare triple {1165#true} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1165#true} is VALID [2022-04-07 23:50:00,137 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-07 23:50:00,137 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-07 23:50:00,137 INFO L272 TraceCheckUtils]: 4: Hoare triple {1165#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1165#true} is VALID [2022-04-07 23:50:00,138 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-07 23:50:00,138 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-07 23:50:00,138 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-07 23:50:00,138 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-07 23:50:00,138 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-07 23:50:00,138 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:50:00,138 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [265139261] [2022-04-07 23:50:00,138 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:50:00,138 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1942271240] [2022-04-07 23:50:00,139 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1942271240] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:50:00,139 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:50:00,139 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 22 [2022-04-07 23:50:00,139 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [196112512] [2022-04-07 23:50:00,139 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:50:00,139 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-07 23:50:00,140 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:50:00,140 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-07 23:50:00,176 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-07 23:50:00,177 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-07 23:50:00,177 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:50:00,177 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-07 23:50:00,177 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-07 23:50:00,177 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-07 23:50:01,075 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:01,075 INFO L93 Difference]: Finished difference Result 85 states and 98 transitions. [2022-04-07 23:50:01,075 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-07 23:50:01,075 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-07 23:50:01,075 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:50:01,075 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-07 23:50:01,077 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-07 23:50:01,077 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-07 23:50:01,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-07 23:50:01,078 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 61 transitions. [2022-04-07 23:50:01,139 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 23:50:01,141 INFO L225 Difference]: With dead ends: 85 [2022-04-07 23:50:01,141 INFO L226 Difference]: Without dead ends: 77 [2022-04-07 23:50:01,141 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 38 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 265 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=222, Invalid=1110, Unknown=0, NotChecked=0, Total=1332 [2022-04-07 23:50:01,142 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-07 23:50:01,142 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-07 23:50:01,142 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-07 23:50:01,162 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 67. [2022-04-07 23:50:01,162 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:50:01,162 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-07 23:50:01,163 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-07 23:50:01,163 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-07 23:50:01,165 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:01,165 INFO L93 Difference]: Finished difference Result 77 states and 88 transitions. [2022-04-07 23:50:01,165 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 88 transitions. [2022-04-07 23:50:01,165 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:50:01,165 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:50:01,165 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-07 23:50:01,166 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-07 23:50:01,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:01,167 INFO L93 Difference]: Finished difference Result 77 states and 88 transitions. [2022-04-07 23:50:01,167 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 88 transitions. [2022-04-07 23:50:01,168 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:50:01,168 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:50:01,168 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:50:01,168 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:50:01,168 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-07 23:50:01,169 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 76 transitions. [2022-04-07 23:50:01,169 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 76 transitions. Word has length 29 [2022-04-07 23:50:01,170 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:50:01,170 INFO L478 AbstractCegarLoop]: Abstraction has 67 states and 76 transitions. [2022-04-07 23:50:01,170 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-07 23:50:01,170 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 76 transitions. [2022-04-07 23:50:01,170 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-07 23:50:01,170 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:50:01,170 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-07 23:50:01,188 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-07 23:50:01,387 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:50:01,387 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:50:01,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:50:01,388 INFO L85 PathProgramCache]: Analyzing trace with hash -782335822, now seen corresponding path program 1 times [2022-04-07 23:50:01,388 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:50:01,388 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [404451219] [2022-04-07 23:50:01,388 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:50:01,388 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:50:01,426 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:50:01,426 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [941151311] [2022-04-07 23:50:01,426 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:50:01,426 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:50:01,426 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:50:01,427 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 23:50:01,429 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-07 23:50:01,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:50:01,514 INFO L263 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-07 23:50:01,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:50:01,531 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:50:11,358 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:50:18,599 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:50:26,701 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-07 23:50:26,701 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-07 23:50:26,702 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-07 23:50:26,702 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-07 23:50:26,702 INFO L272 TraceCheckUtils]: 4: Hoare triple {1752#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-07 23:50:26,702 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-07 23:50:26,703 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-07 23:50:26,703 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:50:26,703 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-07 23:50:26,704 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-07 23:50:26,704 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-07 23:50:26,704 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-07 23:50:26,705 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-07 23:50:26,708 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-07 23:50:26,709 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-07 23:50:26,709 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-07 23:50:26,710 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-07 23:50:26,710 INFO L290 TraceCheckUtils]: 17: Hoare triple {1797#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1797#(= main_~y~0 0)} is VALID [2022-04-07 23:50:26,710 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-07 23:50:26,710 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-07 23:50:26,710 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-07 23:50:26,710 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-07 23:50:26,711 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-07 23:50:26,711 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-07 23:50:26,712 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-07 23:50:26,712 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-07 23:50:26,715 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-07 23:50:26,716 INFO L290 TraceCheckUtils]: 27: Hoare triple {1797#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:50:26,716 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-07 23:50:26,716 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-07 23:50:26,717 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-07 23:50:26,717 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-07 23:50:26,718 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-07 23:50:26,719 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-07 23:50:28,721 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-07 23:50:28,722 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-07 23:50:28,723 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-07 23:50:28,723 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-07 23:50:28,723 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-07 23:50:28,724 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-07 23:50:28,724 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:50:30,090 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-07 23:50:30,091 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-07 23:50:30,091 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-07 23:50:30,092 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-07 23:50:30,093 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-07 23:50:30,093 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-07 23:50:30,094 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-07 23:50:30,095 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-07 23:50:30,095 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-07 23:50:30,095 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-07 23:50:30,095 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-07 23:50:30,096 INFO L290 TraceCheckUtils]: 27: Hoare triple {1797#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:50:30,096 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-07 23:50:30,096 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-07 23:50:30,098 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-07 23:50:30,098 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-07 23:50:30,099 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-07 23:50:30,099 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-07 23:50:30,099 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-07 23:50:30,099 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-07 23:50:30,099 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-07 23:50:30,099 INFO L290 TraceCheckUtils]: 17: Hoare triple {1797#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1797#(= main_~y~0 0)} is VALID [2022-04-07 23:50:30,100 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-07 23:50:30,100 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-07 23:50:30,100 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-07 23:50:30,101 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-07 23:50:30,101 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-07 23:50:30,102 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-07 23:50:30,102 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-07 23:50:30,102 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-07 23:50:30,102 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-07 23:50:30,103 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:50:30,104 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-07 23:50:30,104 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-07 23:50:30,104 INFO L272 TraceCheckUtils]: 4: Hoare triple {1752#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1752#true} is VALID [2022-04-07 23:50:30,105 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-07 23:50:30,105 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-07 23:50:30,105 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-07 23:50:30,105 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-07 23:50:30,105 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-07 23:50:30,105 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:50:30,105 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [404451219] [2022-04-07 23:50:30,105 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:50:30,105 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [941151311] [2022-04-07 23:50:30,106 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [941151311] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:50:30,106 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:50:30,106 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 18 [2022-04-07 23:50:30,106 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1135029075] [2022-04-07 23:50:30,106 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:50:30,106 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-07 23:50:30,107 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:50:30,107 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-07 23:50:32,137 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 44 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 23:50:32,137 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-07 23:50:32,137 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:50:32,138 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-07 23:50:32,138 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2022-04-07 23:50:32,138 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-07 23:50:34,506 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:50:38,539 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:50:40,584 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 23:50:42,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:42,944 INFO L93 Difference]: Finished difference Result 96 states and 113 transitions. [2022-04-07 23:50:42,944 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-07 23:50:42,945 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-07 23:50:42,945 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:50:42,945 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-07 23:50:42,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-07 23:50:42,946 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-07 23:50:42,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-07 23:50:42,947 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 49 transitions. [2022-04-07 23:50:44,987 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-07 23:50:44,989 INFO L225 Difference]: With dead ends: 96 [2022-04-07 23:50:44,989 INFO L226 Difference]: Without dead ends: 90 [2022-04-07 23:50:44,989 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 59 SyntacticMatches, 2 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 4.6s TimeCoverageRelationStatistics Valid=117, Invalid=433, Unknown=2, NotChecked=0, Total=552 [2022-04-07 23:50:44,990 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-07 23:50:44,990 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-07 23:50:44,990 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-07 23:50:45,039 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 88. [2022-04-07 23:50:45,039 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:50:45,039 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-07 23:50:45,039 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-07 23:50:45,040 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-07 23:50:45,042 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:45,042 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2022-04-07 23:50:45,042 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 106 transitions. [2022-04-07 23:50:45,042 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:50:45,042 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:50:45,042 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-07 23:50:45,043 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-07 23:50:45,045 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:45,045 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2022-04-07 23:50:45,045 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 106 transitions. [2022-04-07 23:50:45,045 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:50:45,045 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:50:45,045 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:50:45,045 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:50:45,045 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-07 23:50:45,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 104 transitions. [2022-04-07 23:50:45,058 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 104 transitions. Word has length 39 [2022-04-07 23:50:45,058 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:50:45,058 INFO L478 AbstractCegarLoop]: Abstraction has 88 states and 104 transitions. [2022-04-07 23:50:45,059 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-07 23:50:45,059 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 104 transitions. [2022-04-07 23:50:45,060 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-07 23:50:45,060 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:50:45,060 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-07 23:50:45,093 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-07 23:50:45,261 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:50:45,261 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:50:45,261 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:50:45,262 INFO L85 PathProgramCache]: Analyzing trace with hash 1435422131, now seen corresponding path program 1 times [2022-04-07 23:50:45,262 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:50:45,262 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1621752500] [2022-04-07 23:50:45,262 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:50:45,262 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:50:45,271 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:50:45,271 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [551649453] [2022-04-07 23:50:45,271 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:50:45,271 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:50:45,271 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:50:45,274 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 23:50:45,275 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-07 23:50:45,328 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:50:45,329 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 23:50:45,337 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:50:45,338 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:50:46,310 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-07 23:50:46,310 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-07 23:50:46,310 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-07 23:50:46,310 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-07 23:50:46,310 INFO L272 TraceCheckUtils]: 4: Hoare triple {2444#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-07 23:50:46,311 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-07 23:50:46,311 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-07 23:50:46,312 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-07 23:50:46,312 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-07 23:50:46,312 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-07 23:50:46,312 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-07 23:50:46,312 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-07 23:50:46,313 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-07 23:50:46,313 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-07 23:50:46,315 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-07 23:50:46,315 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-07 23:50:46,316 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-07 23:50:46,316 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:50:46,316 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-07 23:50:46,316 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-07 23:50:46,316 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-07 23:50:46,317 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-07 23:50:46,317 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-07 23:50:46,318 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-07 23:50:46,318 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-07 23:50:46,319 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-07 23:50:46,320 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-07 23:50:46,320 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-07 23:50:46,320 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-07 23:50:46,320 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-07 23:50:46,320 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-07 23:50:46,320 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-07 23:50:46,321 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-07 23:50:46,322 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-07 23:50:46,322 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-07 23:50:46,322 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-07 23:50:46,322 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-07 23:50:46,322 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-07 23:50:46,322 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-07 23:50:46,322 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-07 23:50:46,323 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:50:46,658 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-07 23:50:46,658 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-07 23:50:46,658 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-07 23:50:46,658 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-07 23:50:46,658 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-07 23:50:46,659 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-07 23:50:46,659 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-07 23:50:46,659 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-07 23:50:46,659 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-07 23:50:46,660 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-07 23:50:46,660 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-07 23:50:46,660 INFO L290 TraceCheckUtils]: 27: Hoare triple {2583#(<= main_~x~0 main_~X~0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2583#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 23:50:46,660 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-07 23:50:46,661 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-07 23:50:46,661 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-07 23:50:46,662 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-07 23:50:46,662 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-07 23:50:46,663 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-07 23:50:46,663 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-07 23:50:46,663 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-07 23:50:46,663 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-07 23:50:46,663 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 23:50:46,664 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-07 23:50:46,664 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-07 23:50:46,665 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-07 23:50:46,665 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-07 23:50:46,666 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-07 23:50:46,666 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-07 23:50:46,666 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-07 23:50:46,666 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-07 23:50:46,666 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-07 23:50:46,667 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:50:46,667 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-07 23:50:46,668 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-07 23:50:46,668 INFO L272 TraceCheckUtils]: 4: Hoare triple {2444#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2444#true} is VALID [2022-04-07 23:50:46,668 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-07 23:50:46,668 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-07 23:50:46,668 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-07 23:50:46,668 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-07 23:50:46,669 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-07 23:50:46,669 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:50:46,669 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1621752500] [2022-04-07 23:50:46,669 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:50:46,669 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [551649453] [2022-04-07 23:50:46,669 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [551649453] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:50:46,669 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:50:46,669 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-07 23:50:46,669 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1742766557] [2022-04-07 23:50:46,669 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:50:46,670 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-07 23:50:46,670 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:50:46,670 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-07 23:50:46,709 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 23:50:46,710 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-07 23:50:46,710 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:50:46,710 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-07 23:50:46,710 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-07 23:50:46,710 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-07 23:50:47,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:47,005 INFO L93 Difference]: Finished difference Result 97 states and 113 transitions. [2022-04-07 23:50:47,005 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 23:50:47,005 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-07 23:50:47,005 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:50:47,005 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-07 23:50:47,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 54 transitions. [2022-04-07 23:50:47,007 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-07 23:50:47,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 54 transitions. [2022-04-07 23:50:47,008 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 54 transitions. [2022-04-07 23:50:47,049 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-07 23:50:47,051 INFO L225 Difference]: With dead ends: 97 [2022-04-07 23:50:47,051 INFO L226 Difference]: Without dead ends: 91 [2022-04-07 23:50:47,051 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-07 23:50:47,052 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-07 23:50:47,052 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-07 23:50:47,052 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-04-07 23:50:47,079 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 83. [2022-04-07 23:50:47,079 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:50:47,080 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-07 23:50:47,080 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-07 23:50:47,080 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-07 23:50:47,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:47,083 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-07 23:50:47,083 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 107 transitions. [2022-04-07 23:50:47,083 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:50:47,083 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:50:47,083 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-07 23:50:47,083 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-07 23:50:47,086 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:47,086 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-07 23:50:47,086 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 107 transitions. [2022-04-07 23:50:47,086 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:50:47,086 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:50:47,086 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:50:47,086 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:50:47,087 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-07 23:50:47,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 97 transitions. [2022-04-07 23:50:47,089 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 97 transitions. Word has length 39 [2022-04-07 23:50:47,089 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:50:47,089 INFO L478 AbstractCegarLoop]: Abstraction has 83 states and 97 transitions. [2022-04-07 23:50:47,090 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-07 23:50:47,090 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 97 transitions. [2022-04-07 23:50:47,090 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-07 23:50:47,090 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:50:47,090 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-07 23:50:47,110 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-07 23:50:47,303 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:50:47,303 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:50:47,304 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:50:47,304 INFO L85 PathProgramCache]: Analyzing trace with hash 1628716144, now seen corresponding path program 2 times [2022-04-07 23:50:47,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:50:47,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [776131245] [2022-04-07 23:50:47,304 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:50:47,304 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:50:47,315 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:50:47,315 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1333042027] [2022-04-07 23:50:47,315 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-07 23:50:47,315 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:50:47,315 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:50:47,331 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 23:50:47,331 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-07 23:50:47,390 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-07 23:50:47,390 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 23:50:47,391 INFO L263 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 23:50:47,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:50:47,406 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:50:48,199 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-07 23:50:48,200 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-07 23:50:48,200 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-07 23:50:48,200 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-07 23:50:48,200 INFO L272 TraceCheckUtils]: 4: Hoare triple {3121#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-07 23:50:48,201 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-07 23:50:48,201 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-07 23:50:48,202 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-07 23:50:48,202 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-07 23:50:48,202 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-07 23:50:48,202 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-07 23:50:48,202 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-07 23:50:48,203 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-07 23:50:48,203 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-07 23:50:48,204 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-07 23:50:48,205 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-07 23:50:48,205 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-07 23:50:48,206 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 23:50:48,206 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-07 23:50:48,206 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-07 23:50:48,206 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-07 23:50:48,206 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-07 23:50:48,207 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-07 23:50:48,207 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-07 23:50:48,208 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-07 23:50:48,209 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-07 23:50:48,209 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-07 23:50:48,210 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 23:50:48,210 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-07 23:50:48,210 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-07 23:50:48,210 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-07 23:50:48,210 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-07 23:50:48,211 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-07 23:50:48,211 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-07 23:50:48,212 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-07 23:50:48,212 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-07 23:50:48,213 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-07 23:50:48,213 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 23:50:48,213 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-07 23:50:48,213 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-07 23:50:48,213 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-07 23:50:48,213 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-07 23:50:48,214 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-07 23:50:48,215 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-07 23:50:48,215 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-07 23:50:48,215 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-07 23:50:48,215 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-07 23:50:48,215 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-07 23:50:48,215 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-07 23:50:48,215 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-07 23:50:48,216 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 23:50:48,517 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-07 23:50:48,517 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-07 23:50:48,517 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-07 23:50:48,517 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-07 23:50:48,517 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-07 23:50:48,517 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-07 23:50:48,518 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-07 23:50:48,518 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-07 23:50:48,518 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-07 23:50:48,518 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-07 23:50:48,518 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-07 23:50:48,519 INFO L290 TraceCheckUtils]: 37: Hoare triple {3291#(<= main_~x~0 main_~X~0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3291#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 23:50:48,519 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-07 23:50:48,520 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-07 23:50:48,520 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-07 23:50:48,520 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-07 23:50:48,521 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-07 23:50:48,521 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-07 23:50:48,521 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-07 23:50:48,521 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-07 23:50:48,521 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-07 23:50:48,522 INFO L290 TraceCheckUtils]: 27: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} [75] L31-1-->L34: Formula: (and (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 23:50:48,522 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-07 23:50:48,522 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-07 23:50:48,523 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-07 23:50:48,523 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-07 23:50:48,524 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-07 23:50:48,524 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-07 23:50:48,524 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-07 23:50:48,524 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-07 23:50:48,524 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-07 23:50:48,524 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-07 23:50:48,525 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-07 23:50:48,525 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-07 23:50:48,526 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-07 23:50:48,526 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-07 23:50:48,527 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-07 23:50:48,527 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-07 23:50:48,527 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-07 23:50:48,527 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-07 23:50:48,527 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-07 23:50:48,528 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_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6)) (< |v_main_#t~post6_5| 50)) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {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-07 23:50:48,528 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-07 23:50:48,529 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-07 23:50:48,529 INFO L272 TraceCheckUtils]: 4: Hoare triple {3121#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3121#true} is VALID [2022-04-07 23:50:48,529 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-07 23:50:48,529 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-07 23:50:48,529 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-07 23:50:48,529 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-07 23:50:48,529 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-07 23:50:48,530 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 23:50:48,530 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [776131245] [2022-04-07 23:50:48,530 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 23:50:48,530 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1333042027] [2022-04-07 23:50:48,530 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1333042027] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 23:50:48,530 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 23:50:48,530 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-07 23:50:48,530 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1175692137] [2022-04-07 23:50:48,530 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 23:50:48,531 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-07 23:50:48,531 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 23:50:48,531 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-07 23:50:48,578 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-07 23:50:48,578 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-07 23:50:48,578 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 23:50:48,578 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-07 23:50:48,578 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-04-07 23:50:48,579 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-07 23:50:49,044 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:49,044 INFO L93 Difference]: Finished difference Result 108 states and 127 transitions. [2022-04-07 23:50:49,044 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 23:50:49,044 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-07 23:50:49,044 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 23:50:49,044 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-07 23:50:49,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 61 transitions. [2022-04-07 23:50:49,046 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-07 23:50:49,047 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 61 transitions. [2022-04-07 23:50:49,047 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 61 transitions. [2022-04-07 23:50:49,106 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 23:50:49,107 INFO L225 Difference]: With dead ends: 108 [2022-04-07 23:50:49,107 INFO L226 Difference]: Without dead ends: 102 [2022-04-07 23:50:49,108 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-07 23:50:49,108 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-07 23:50:49,108 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-07 23:50:49,109 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-04-07 23:50:49,155 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 89. [2022-04-07 23:50:49,155 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 23:50:49,155 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-07 23:50:49,155 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-07 23:50:49,156 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-07 23:50:49,164 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:49,164 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-07 23:50:49,164 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 121 transitions. [2022-04-07 23:50:49,164 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:50:49,164 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:50:49,165 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-07 23:50:49,165 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-07 23:50:49,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 23:50:49,167 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-07 23:50:49,167 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 121 transitions. [2022-04-07 23:50:49,167 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 23:50:49,167 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 23:50:49,167 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 23:50:49,167 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 23:50:49,167 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-07 23:50:49,169 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 105 transitions. [2022-04-07 23:50:49,169 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 105 transitions. Word has length 49 [2022-04-07 23:50:49,169 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 23:50:49,169 INFO L478 AbstractCegarLoop]: Abstraction has 89 states and 105 transitions. [2022-04-07 23:50:49,169 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-07 23:50:49,170 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 105 transitions. [2022-04-07 23:50:49,170 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-07 23:50:49,170 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 23:50:49,170 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-07 23:50:49,205 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-07 23:50:49,370 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:50:49,371 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 23:50:49,371 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 23:50:49,371 INFO L85 PathProgramCache]: Analyzing trace with hash 1136439088, now seen corresponding path program 3 times [2022-04-07 23:50:49,371 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 23:50:49,371 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [589642065] [2022-04-07 23:50:49,371 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 23:50:49,372 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 23:50:49,381 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 23:50:49,381 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1389809782] [2022-04-07 23:50:49,381 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-07 23:50:49,381 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 23:50:49,381 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 23:50:49,384 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-07 23:50:49,385 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-07 23:50:49,922 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-07 23:50:49,922 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 23:50:49,923 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-07 23:50:49,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 23:50:49,941 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 23:51:04,593 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:51:08,189 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:51:12,673 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 23:51:44,384 WARN L232 SmtUtils]: Spent 12.96s on a formula simplification that was a NOOP. DAG size: 48 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate)