/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound100.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 18:17:35,730 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 18:17:35,731 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 18:17:35,772 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 18:17:35,772 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 18:17:35,773 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 18:17:35,774 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 18:17:35,775 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 18:17:35,776 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 18:17:35,776 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 18:17:35,777 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 18:17:35,778 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 18:17:35,778 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 18:17:35,779 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 18:17:35,780 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 18:17:35,780 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 18:17:35,781 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 18:17:35,782 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 18:17:35,783 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 18:17:35,784 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 18:17:35,785 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 18:17:35,785 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 18:17:35,786 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 18:17:35,787 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 18:17:35,787 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 18:17:35,789 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 18:17:35,789 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 18:17:35,789 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 18:17:35,790 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 18:17:35,790 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 18:17:35,791 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 18:17:35,791 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 18:17:35,791 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 18:17:35,792 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 18:17:35,792 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 18:17:35,793 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 18:17:35,793 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 18:17:35,794 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 18:17:35,794 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 18:17:35,794 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 18:17:35,795 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 18:17:35,800 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 18:17:35,801 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-07 18:17:35,807 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 18:17:35,807 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 18:17:35,808 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 18:17:35,808 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 18:17:35,808 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 18:17:35,808 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 18:17:35,808 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 18:17:35,809 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 18:17:35,809 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 18:17:35,809 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 18:17:35,809 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 18:17:35,809 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 18:17:35,809 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 18:17:35,809 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 18:17:35,810 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 18:17:35,810 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 18:17:35,810 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 18:17:35,810 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 18:17:35,810 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 18:17:35,810 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 18:17:35,810 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 18:17:35,811 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 18:17:35,811 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-07 18:17:36,006 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 18:17:36,028 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 18:17:36,031 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 18:17:36,031 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 18:17:36,032 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 18:17:36,034 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound100.c [2022-04-07 18:17:36,095 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0f040e399/698b4f1ca4c54b4d93703522d5e4aa68/FLAG1741e6c3f [2022-04-07 18:17:36,425 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 18:17:36,425 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound100.c [2022-04-07 18:17:36,429 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0f040e399/698b4f1ca4c54b4d93703522d5e4aa68/FLAG1741e6c3f [2022-04-07 18:17:36,438 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0f040e399/698b4f1ca4c54b4d93703522d5e4aa68 [2022-04-07 18:17:36,439 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 18:17:36,440 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 18:17:36,443 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 18:17:36,444 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 18:17:36,445 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 18:17:36,446 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 06:17:36" (1/1) ... [2022-04-07 18:17:36,447 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7a6cbdbe and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:17:36, skipping insertion in model container [2022-04-07 18:17:36,447 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 06:17:36" (1/1) ... [2022-04-07 18:17:36,452 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 18:17:36,462 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 18:17:36,567 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_unwindbound100.c[597,610] [2022-04-07 18:17:36,592 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 18:17:36,597 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 18:17:36,604 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_unwindbound100.c[597,610] [2022-04-07 18:17:36,609 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 18:17:36,616 INFO L208 MainTranslator]: Completed translation [2022-04-07 18:17:36,617 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:17:36 WrapperNode [2022-04-07 18:17:36,617 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 18:17:36,617 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 18:17:36,618 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 18:17:36,618 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 18:17:36,623 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:17:36" (1/1) ... [2022-04-07 18:17:36,624 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:17:36" (1/1) ... [2022-04-07 18:17:36,627 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:17:36" (1/1) ... [2022-04-07 18:17:36,627 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:17:36" (1/1) ... [2022-04-07 18:17:36,633 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:17:36" (1/1) ... [2022-04-07 18:17:36,635 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:17:36" (1/1) ... [2022-04-07 18:17:36,636 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:17:36" (1/1) ... [2022-04-07 18:17:36,637 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 18:17:36,638 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 18:17:36,638 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 18:17:36,638 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 18:17:36,643 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:17:36" (1/1) ... [2022-04-07 18:17:36,650 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 18:17:36,658 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:17:36,666 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 18:17:36,683 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 18:17:36,691 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 18:17:36,691 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 18:17:36,691 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 18:17:36,691 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 18:17:36,691 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 18:17:36,691 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 18:17:36,691 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 18:17:36,691 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 18:17:36,691 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 18:17:36,691 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 18:17:36,692 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 18:17:36,692 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 18:17:36,692 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 18:17:36,692 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 18:17:36,692 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 18:17:36,692 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 18:17:36,692 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 18:17:36,692 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 18:17:36,692 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 18:17:36,692 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 18:17:36,734 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 18:17:36,735 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 18:17:36,853 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 18:17:36,858 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 18:17:36,858 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-07 18:17:36,859 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:17:36 BoogieIcfgContainer [2022-04-07 18:17:36,859 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 18:17:36,860 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 18:17:36,869 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 18:17:36,870 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 18:17:36,872 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:17:36" (1/1) ... [2022-04-07 18:17:36,873 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 18:17:36,891 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 06:17:36 BasicIcfg [2022-04-07 18:17:36,892 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 18:17:36,893 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 18:17:36,893 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 18:17:36,895 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 18:17:36,895 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 06:17:36" (1/4) ... [2022-04-07 18:17:36,895 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7a8c0838 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 06:17:36, skipping insertion in model container [2022-04-07 18:17:36,895 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:17:36" (2/4) ... [2022-04-07 18:17:36,895 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7a8c0838 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 06:17:36, skipping insertion in model container [2022-04-07 18:17:36,896 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:17:36" (3/4) ... [2022-04-07 18:17:36,896 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7a8c0838 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 06:17:36, skipping insertion in model container [2022-04-07 18:17:36,896 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 06:17:36" (4/4) ... [2022-04-07 18:17:36,896 INFO L111 eAbstractionObserver]: Analyzing ICFG bresenham-ll_unwindbound100.cJordan [2022-04-07 18:17:36,899 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 18:17:36,900 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 18:17:36,924 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 18:17:36,928 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-07 18:17:36,929 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 18:17:36,939 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 18:17:36,943 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-07 18:17:36,943 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:17:36,944 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:17:36,944 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:17:36,947 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:17:36,947 INFO L85 PathProgramCache]: Analyzing trace with hash -498253564, now seen corresponding path program 1 times [2022-04-07 18:17:36,953 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:17:36,953 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [751689948] [2022-04-07 18:17:36,953 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:17:36,954 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:17:37,012 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:37,052 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 18:17:37,055 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:37,065 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 18:17:37,065 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 18:17:37,066 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 18:17:37,068 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 18:17:37,068 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 18:17:37,068 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 18:17:37,069 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 18:17:37,069 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 18:17:37,069 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 18:17:37,070 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 18:17:37,070 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 18:17:37,071 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 18:17:37,071 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 18:17:37,071 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 18:17:37,072 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 18:17:37,072 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 18:17:37,072 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:17:37,073 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [751689948] [2022-04-07 18:17:37,073 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [751689948] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:17:37,073 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:17:37,074 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 18:17:37,075 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1986545510] [2022-04-07 18:17:37,075 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:17:37,079 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 18:17:37,080 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:17:37,082 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 18:17:37,102 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 18:17:37,102 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 18:17:37,102 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:17:37,134 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 18:17:37,135 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 18:17:37,137 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 18:17:37,239 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:37,240 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-07 18:17:37,240 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 18:17:37,240 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 18:17:37,240 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:17:37,241 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 18:17:37,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 32 transitions. [2022-04-07 18:17:37,246 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 18:17:37,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 32 transitions. [2022-04-07 18:17:37,250 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 32 transitions. [2022-04-07 18:17:37,291 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 18:17:37,296 INFO L225 Difference]: With dead ends: 26 [2022-04-07 18:17:37,297 INFO L226 Difference]: Without dead ends: 21 [2022-04-07 18:17:37,298 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 18:17:37,300 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 18:17:37,301 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 18:17:37,315 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states. [2022-04-07 18:17:37,322 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 20. [2022-04-07 18:17:37,322 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:17:37,323 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 18:17:37,324 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 18:17:37,324 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 18:17:37,326 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:37,326 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-07 18:17:37,327 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-07 18:17:37,327 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:17:37,327 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:17:37,327 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 18:17:37,328 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 18:17:37,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:37,330 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-07 18:17:37,330 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-07 18:17:37,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:17:37,331 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:17:37,331 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:17:37,331 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:17:37,331 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 18:17:37,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 23 transitions. [2022-04-07 18:17:37,333 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 23 transitions. Word has length 12 [2022-04-07 18:17:37,333 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:17:37,334 INFO L478 AbstractCegarLoop]: Abstraction has 20 states and 23 transitions. [2022-04-07 18:17:37,334 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 18:17:37,334 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 23 transitions. [2022-04-07 18:17:37,334 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-07 18:17:37,334 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:17:37,334 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:17:37,335 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 18:17:37,335 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:17:37,335 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:17:37,336 INFO L85 PathProgramCache]: Analyzing trace with hash -467747580, now seen corresponding path program 1 times [2022-04-07 18:17:37,336 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:17:37,336 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [878195161] [2022-04-07 18:17:37,336 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:17:37,336 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:17:37,349 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:17:37,349 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [745055121] [2022-04-07 18:17:37,350 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:17:37,350 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:17:37,350 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:17:37,356 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:17:37,357 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 18:17:37,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:37,397 INFO L263 TraceCheckSpWp]: Trace formula consists of 79 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-07 18:17:37,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:37,407 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:17:37,594 INFO L272 TraceCheckUtils]: 0: Hoare triple {124#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {124#true} is VALID [2022-04-07 18:17:37,594 INFO L290 TraceCheckUtils]: 1: Hoare triple {124#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {124#true} is VALID [2022-04-07 18:17:37,594 INFO L290 TraceCheckUtils]: 2: Hoare triple {124#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {124#true} is VALID [2022-04-07 18:17:37,595 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124#true} {124#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {124#true} is VALID [2022-04-07 18:17:37,595 INFO L272 TraceCheckUtils]: 4: Hoare triple {124#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {124#true} is VALID [2022-04-07 18:17:37,597 INFO L290 TraceCheckUtils]: 5: Hoare triple {124#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {144#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:37,597 INFO L290 TraceCheckUtils]: 6: Hoare triple {144#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {144#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:37,598 INFO L290 TraceCheckUtils]: 7: Hoare triple {144#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {151#(and (= main_~xy~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~yx~0 0))} is VALID [2022-04-07 18:17:37,599 INFO L272 TraceCheckUtils]: 8: Hoare triple {151#(and (= main_~xy~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~yx~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {155#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:17:37,600 INFO L290 TraceCheckUtils]: 9: Hoare triple {155#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {159#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:17:37,600 INFO L290 TraceCheckUtils]: 10: Hoare triple {159#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {125#false} is VALID [2022-04-07 18:17:37,601 INFO L290 TraceCheckUtils]: 11: Hoare triple {125#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {125#false} is VALID [2022-04-07 18:17:37,601 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 18:17:37,601 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 18:17:37,601 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:17:37,602 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [878195161] [2022-04-07 18:17:37,602 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:17:37,602 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [745055121] [2022-04-07 18:17:37,605 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [745055121] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:17:37,605 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:17:37,606 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-07 18:17:37,606 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1655928875] [2022-04-07 18:17:37,607 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:17:37,608 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 18:17:37,608 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:17:37,608 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 18:17:37,621 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 18:17:37,621 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 18:17:37,621 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:17:37,623 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 18:17:37,623 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-07 18:17:37,624 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 18:17:37,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:37,783 INFO L93 Difference]: Finished difference Result 32 states and 38 transitions. [2022-04-07 18:17:37,783 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 18:17:37,784 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 18:17:37,784 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:17:37,784 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 18:17:37,786 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 18:17:37,786 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 18:17:37,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 18:17:37,788 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 39 transitions. [2022-04-07 18:17:37,816 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:17:37,817 INFO L225 Difference]: With dead ends: 32 [2022-04-07 18:17:37,818 INFO L226 Difference]: Without dead ends: 29 [2022-04-07 18:17:37,818 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 18:17:37,819 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.1s IncrementalHoareTripleChecker+Time [2022-04-07 18:17:37,819 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.1s Time] [2022-04-07 18:17:37,820 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-07 18:17:37,822 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 28. [2022-04-07 18:17:37,822 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:17:37,822 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 18:17:37,823 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 18:17:37,823 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 18:17:37,824 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:37,825 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2022-04-07 18:17:37,825 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2022-04-07 18:17:37,825 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:17:37,825 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:17:37,825 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 18:17:37,826 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 18:17:37,827 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:37,827 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2022-04-07 18:17:37,827 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2022-04-07 18:17:37,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:17:37,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:17:37,828 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:17:37,828 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:17:37,828 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 18:17:37,829 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 31 transitions. [2022-04-07 18:17:37,829 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 31 transitions. Word has length 12 [2022-04-07 18:17:37,830 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:17:37,830 INFO L478 AbstractCegarLoop]: Abstraction has 28 states and 31 transitions. [2022-04-07 18:17:37,830 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 18:17:37,830 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2022-04-07 18:17:37,830 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-07 18:17:37,830 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:17:37,831 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 18:17:37,855 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-07 18:17:38,053 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:17:38,054 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:17:38,054 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:17:38,054 INFO L85 PathProgramCache]: Analyzing trace with hash 1909475431, now seen corresponding path program 1 times [2022-04-07 18:17:38,055 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:17:38,055 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1672065409] [2022-04-07 18:17:38,055 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:17:38,055 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:17:38,070 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:17:38,071 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1119729] [2022-04-07 18:17:38,071 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:17:38,071 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:17:38,071 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:17:38,072 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:17:38,090 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-07 18:17:38,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:38,127 INFO L263 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-07 18:17:38,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:38,150 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:17:38,381 INFO L272 TraceCheckUtils]: 0: Hoare triple {287#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,382 INFO L290 TraceCheckUtils]: 1: Hoare triple {287#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {287#true} is VALID [2022-04-07 18:17:38,382 INFO L290 TraceCheckUtils]: 2: Hoare triple {287#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,382 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {287#true} {287#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,382 INFO L272 TraceCheckUtils]: 4: Hoare triple {287#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,383 INFO L290 TraceCheckUtils]: 5: Hoare triple {287#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:38,384 INFO L290 TraceCheckUtils]: 6: Hoare triple {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:38,384 INFO L290 TraceCheckUtils]: 7: Hoare triple {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:38,385 INFO L272 TraceCheckUtils]: 8: Hoare triple {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {287#true} is VALID [2022-04-07 18:17:38,385 INFO L290 TraceCheckUtils]: 9: Hoare triple {287#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {287#true} is VALID [2022-04-07 18:17:38,387 INFO L290 TraceCheckUtils]: 10: Hoare triple {287#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,387 INFO L290 TraceCheckUtils]: 11: Hoare triple {287#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,391 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {287#true} {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:38,392 INFO L290 TraceCheckUtils]: 13: Hoare triple {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:38,393 INFO L290 TraceCheckUtils]: 14: Hoare triple {307#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {335#(and (= main_~x~0 0) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-07 18:17:38,394 INFO L290 TraceCheckUtils]: 15: Hoare triple {335#(and (= main_~x~0 0) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {339#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-07 18:17:38,394 INFO L290 TraceCheckUtils]: 16: Hoare triple {339#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {339#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-07 18:17:38,395 INFO L290 TraceCheckUtils]: 17: Hoare triple {339#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {346#(and (= main_~xy~0 0) (= main_~Y~0 main_~yx~0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-07 18:17:38,396 INFO L272 TraceCheckUtils]: 18: Hoare triple {346#(and (= main_~xy~0 0) (= main_~Y~0 main_~yx~0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {350#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:17:38,396 INFO L290 TraceCheckUtils]: 19: Hoare triple {350#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {354#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:17:38,397 INFO L290 TraceCheckUtils]: 20: Hoare triple {354#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {288#false} is VALID [2022-04-07 18:17:38,397 INFO L290 TraceCheckUtils]: 21: Hoare triple {288#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {288#false} is VALID [2022-04-07 18:17:38,398 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 18:17:38,398 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:17:38,554 INFO L290 TraceCheckUtils]: 21: Hoare triple {288#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {288#false} is VALID [2022-04-07 18:17:38,557 INFO L290 TraceCheckUtils]: 20: Hoare triple {354#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {288#false} is VALID [2022-04-07 18:17:38,558 INFO L290 TraceCheckUtils]: 19: Hoare triple {350#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {354#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:17:38,559 INFO L272 TraceCheckUtils]: 18: Hoare triple {370#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {350#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:17:38,560 INFO L290 TraceCheckUtils]: 17: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {370#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} is VALID [2022-04-07 18:17:38,560 INFO L290 TraceCheckUtils]: 16: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 18:17:38,564 INFO L290 TraceCheckUtils]: 15: Hoare triple {381#(= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 18:17:38,566 INFO L290 TraceCheckUtils]: 14: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {381#(= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))} is VALID [2022-04-07 18:17:38,567 INFO L290 TraceCheckUtils]: 13: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 18:17:38,570 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {287#true} {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 18:17:38,570 INFO L290 TraceCheckUtils]: 11: Hoare triple {287#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,571 INFO L290 TraceCheckUtils]: 10: Hoare triple {287#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,571 INFO L290 TraceCheckUtils]: 9: Hoare triple {287#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {287#true} is VALID [2022-04-07 18:17:38,571 INFO L272 TraceCheckUtils]: 8: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {287#true} is VALID [2022-04-07 18:17:38,571 INFO L290 TraceCheckUtils]: 7: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 18:17:38,572 INFO L290 TraceCheckUtils]: 6: Hoare triple {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 18:17:38,573 INFO L290 TraceCheckUtils]: 5: Hoare triple {287#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {374#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-07 18:17:38,573 INFO L272 TraceCheckUtils]: 4: Hoare triple {287#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,573 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {287#true} {287#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,573 INFO L290 TraceCheckUtils]: 2: Hoare triple {287#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,573 INFO L290 TraceCheckUtils]: 1: Hoare triple {287#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {287#true} is VALID [2022-04-07 18:17:38,573 INFO L272 TraceCheckUtils]: 0: Hoare triple {287#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#true} is VALID [2022-04-07 18:17:38,574 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 18:17:38,574 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:17:38,574 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1672065409] [2022-04-07 18:17:38,574 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:17:38,574 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1119729] [2022-04-07 18:17:38,574 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1119729] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:17:38,574 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:17:38,574 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-07 18:17:38,574 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [837782682] [2022-04-07 18:17:38,574 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:17:38,575 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 18:17:38,575 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:17:38,575 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 18:17:38,603 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 18:17:38,604 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-07 18:17:38,604 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:17:38,604 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-07 18:17:38,604 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-07 18:17:38,604 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 18:17:39,042 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:39,042 INFO L93 Difference]: Finished difference Result 43 states and 50 transitions. [2022-04-07 18:17:39,042 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-07 18:17:39,043 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 18:17:39,043 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:17:39,043 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 18:17:39,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 48 transitions. [2022-04-07 18:17:39,045 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 18:17:39,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 48 transitions. [2022-04-07 18:17:39,046 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 48 transitions. [2022-04-07 18:17:39,095 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:17:39,096 INFO L225 Difference]: With dead ends: 43 [2022-04-07 18:17:39,096 INFO L226 Difference]: Without dead ends: 38 [2022-04-07 18:17:39,096 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 18:17:39,097 INFO L913 BasicCegarLoop]: 15 mSDtfsCounter, 18 mSDsluCounter, 77 mSDsCounter, 0 mSdLazyCounter, 153 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 92 SdHoareTripleChecker+Invalid, 161 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 153 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 18:17:39,097 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 92 Invalid, 161 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 153 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-07 18:17:39,097 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-07 18:17:39,099 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 36. [2022-04-07 18:17:39,099 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:17:39,100 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 18:17:39,100 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 18:17:39,100 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 18:17:39,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:39,102 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-07 18:17:39,102 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-07 18:17:39,102 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:17:39,102 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:17:39,102 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 18:17:39,102 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 18:17:39,104 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:39,104 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-07 18:17:39,104 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-07 18:17:39,104 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:17:39,104 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:17:39,104 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:17:39,104 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:17:39,105 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 18:17:39,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 40 transitions. [2022-04-07 18:17:39,106 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 40 transitions. Word has length 22 [2022-04-07 18:17:39,106 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:17:39,106 INFO L478 AbstractCegarLoop]: Abstraction has 36 states and 40 transitions. [2022-04-07 18:17:39,106 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 18:17:39,106 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 40 transitions. [2022-04-07 18:17:39,107 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-07 18:17:39,107 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:17:39,107 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 18:17:39,125 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-07 18:17:39,321 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-07 18:17:39,321 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:17:39,322 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:17:39,322 INFO L85 PathProgramCache]: Analyzing trace with hash 1519292561, now seen corresponding path program 1 times [2022-04-07 18:17:39,322 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:17:39,322 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1451697338] [2022-04-07 18:17:39,322 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:17:39,322 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:17:39,343 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:17:39,344 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [920904315] [2022-04-07 18:17:39,344 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:17:39,344 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:17:39,344 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:17:39,356 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:17:39,358 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-07 18:17:39,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:39,400 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 18:17:39,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:39,412 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:17:39,538 INFO L272 TraceCheckUtils]: 0: Hoare triple {592#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {592#true} is VALID [2022-04-07 18:17:39,539 INFO L290 TraceCheckUtils]: 1: Hoare triple {592#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {600#(<= ~counter~0 0)} is VALID [2022-04-07 18:17:39,539 INFO L290 TraceCheckUtils]: 2: Hoare triple {600#(<= ~counter~0 0)} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {600#(<= ~counter~0 0)} is VALID [2022-04-07 18:17:39,540 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {600#(<= ~counter~0 0)} {592#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {600#(<= ~counter~0 0)} is VALID [2022-04-07 18:17:39,540 INFO L272 TraceCheckUtils]: 4: Hoare triple {600#(<= ~counter~0 0)} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {600#(<= ~counter~0 0)} is VALID [2022-04-07 18:17:39,541 INFO L290 TraceCheckUtils]: 5: Hoare triple {600#(<= ~counter~0 0)} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {600#(<= ~counter~0 0)} is VALID [2022-04-07 18:17:39,542 INFO L290 TraceCheckUtils]: 6: Hoare triple {600#(<= ~counter~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {616#(<= ~counter~0 1)} is VALID [2022-04-07 18:17:39,543 INFO L290 TraceCheckUtils]: 7: Hoare triple {616#(<= ~counter~0 1)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {616#(<= ~counter~0 1)} is VALID [2022-04-07 18:17:39,544 INFO L272 TraceCheckUtils]: 8: Hoare triple {616#(<= ~counter~0 1)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {616#(<= ~counter~0 1)} is VALID [2022-04-07 18:17:39,545 INFO L290 TraceCheckUtils]: 9: Hoare triple {616#(<= ~counter~0 1)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {616#(<= ~counter~0 1)} is VALID [2022-04-07 18:17:39,545 INFO L290 TraceCheckUtils]: 10: Hoare triple {616#(<= ~counter~0 1)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {616#(<= ~counter~0 1)} is VALID [2022-04-07 18:17:39,545 INFO L290 TraceCheckUtils]: 11: Hoare triple {616#(<= ~counter~0 1)} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {616#(<= ~counter~0 1)} is VALID [2022-04-07 18:17:39,546 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {616#(<= ~counter~0 1)} {616#(<= ~counter~0 1)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {616#(<= ~counter~0 1)} is VALID [2022-04-07 18:17:39,546 INFO L290 TraceCheckUtils]: 13: Hoare triple {616#(<= ~counter~0 1)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {616#(<= ~counter~0 1)} is VALID [2022-04-07 18:17:39,546 INFO L290 TraceCheckUtils]: 14: Hoare triple {616#(<= ~counter~0 1)} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {616#(<= ~counter~0 1)} is VALID [2022-04-07 18:17:39,547 INFO L290 TraceCheckUtils]: 15: Hoare triple {616#(<= ~counter~0 1)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {616#(<= ~counter~0 1)} is VALID [2022-04-07 18:17:39,547 INFO L290 TraceCheckUtils]: 16: Hoare triple {616#(<= ~counter~0 1)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {647#(<= |main_#t~post6| 1)} is VALID [2022-04-07 18:17:39,547 INFO L290 TraceCheckUtils]: 17: Hoare triple {647#(<= |main_#t~post6| 1)} [74] L31-1-->L31-4: Formula: (not (< |v_main_#t~post6_3| 100)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {593#false} is VALID [2022-04-07 18:17:39,548 INFO L290 TraceCheckUtils]: 18: Hoare triple {593#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {593#false} is VALID [2022-04-07 18:17:39,548 INFO L272 TraceCheckUtils]: 19: Hoare triple {593#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {593#false} is VALID [2022-04-07 18:17:39,548 INFO L290 TraceCheckUtils]: 20: Hoare triple {593#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {593#false} is VALID [2022-04-07 18:17:39,548 INFO L290 TraceCheckUtils]: 21: Hoare triple {593#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {593#false} is VALID [2022-04-07 18:17:39,548 INFO L290 TraceCheckUtils]: 22: Hoare triple {593#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {593#false} is VALID [2022-04-07 18:17:39,548 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 18:17:39,548 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:17:39,666 INFO L290 TraceCheckUtils]: 22: Hoare triple {593#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {593#false} is VALID [2022-04-07 18:17:39,666 INFO L290 TraceCheckUtils]: 21: Hoare triple {593#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {593#false} is VALID [2022-04-07 18:17:39,666 INFO L290 TraceCheckUtils]: 20: Hoare triple {593#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {593#false} is VALID [2022-04-07 18:17:39,666 INFO L272 TraceCheckUtils]: 19: Hoare triple {593#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {593#false} is VALID [2022-04-07 18:17:39,667 INFO L290 TraceCheckUtils]: 18: Hoare triple {593#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {593#false} is VALID [2022-04-07 18:17:39,667 INFO L290 TraceCheckUtils]: 17: Hoare triple {681#(< |main_#t~post6| 100)} [74] L31-1-->L31-4: Formula: (not (< |v_main_#t~post6_3| 100)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {593#false} is VALID [2022-04-07 18:17:39,668 INFO L290 TraceCheckUtils]: 16: Hoare triple {685#(< ~counter~0 100)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {681#(< |main_#t~post6| 100)} is VALID [2022-04-07 18:17:39,669 INFO L290 TraceCheckUtils]: 15: Hoare triple {685#(< ~counter~0 100)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {685#(< ~counter~0 100)} is VALID [2022-04-07 18:17:39,669 INFO L290 TraceCheckUtils]: 14: Hoare triple {685#(< ~counter~0 100)} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {685#(< ~counter~0 100)} is VALID [2022-04-07 18:17:39,669 INFO L290 TraceCheckUtils]: 13: Hoare triple {685#(< ~counter~0 100)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {685#(< ~counter~0 100)} is VALID [2022-04-07 18:17:39,675 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {592#true} {685#(< ~counter~0 100)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {685#(< ~counter~0 100)} is VALID [2022-04-07 18:17:39,676 INFO L290 TraceCheckUtils]: 11: Hoare triple {592#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {592#true} is VALID [2022-04-07 18:17:39,676 INFO L290 TraceCheckUtils]: 10: Hoare triple {592#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {592#true} is VALID [2022-04-07 18:17:39,676 INFO L290 TraceCheckUtils]: 9: Hoare triple {592#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {592#true} is VALID [2022-04-07 18:17:39,676 INFO L272 TraceCheckUtils]: 8: Hoare triple {685#(< ~counter~0 100)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {592#true} is VALID [2022-04-07 18:17:39,676 INFO L290 TraceCheckUtils]: 7: Hoare triple {685#(< ~counter~0 100)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {685#(< ~counter~0 100)} is VALID [2022-04-07 18:17:39,677 INFO L290 TraceCheckUtils]: 6: Hoare triple {716#(< ~counter~0 99)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {685#(< ~counter~0 100)} is VALID [2022-04-07 18:17:39,678 INFO L290 TraceCheckUtils]: 5: Hoare triple {716#(< ~counter~0 99)} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {716#(< ~counter~0 99)} is VALID [2022-04-07 18:17:39,678 INFO L272 TraceCheckUtils]: 4: Hoare triple {716#(< ~counter~0 99)} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {716#(< ~counter~0 99)} is VALID [2022-04-07 18:17:39,679 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {716#(< ~counter~0 99)} {592#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {716#(< ~counter~0 99)} is VALID [2022-04-07 18:17:39,680 INFO L290 TraceCheckUtils]: 2: Hoare triple {716#(< ~counter~0 99)} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {716#(< ~counter~0 99)} is VALID [2022-04-07 18:17:39,681 INFO L290 TraceCheckUtils]: 1: Hoare triple {592#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {716#(< ~counter~0 99)} is VALID [2022-04-07 18:17:39,681 INFO L272 TraceCheckUtils]: 0: Hoare triple {592#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {592#true} is VALID [2022-04-07 18:17:39,681 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 18:17:39,681 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:17:39,682 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1451697338] [2022-04-07 18:17:39,682 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:17:39,682 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [920904315] [2022-04-07 18:17:39,682 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [920904315] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:17:39,682 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:17:39,682 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-07 18:17:39,682 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [184191675] [2022-04-07 18:17:39,682 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:17:39,682 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 18:17:39,684 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:17:39,684 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 18:17:39,705 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 18:17:39,706 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 18:17:39,706 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:17:39,706 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 18:17:39,706 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-07 18:17:39,707 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 18:17:39,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:39,846 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-07 18:17:39,846 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-07 18:17:39,846 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 18:17:39,846 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:17:39,846 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 18:17:39,848 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 71 transitions. [2022-04-07 18:17:39,848 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 18:17:39,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 71 transitions. [2022-04-07 18:17:39,850 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 71 transitions. [2022-04-07 18:17:39,893 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:17:39,894 INFO L225 Difference]: With dead ends: 71 [2022-04-07 18:17:39,895 INFO L226 Difference]: Without dead ends: 71 [2022-04-07 18:17:39,895 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 18:17:39,895 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 47 mSDsluCounter, 68 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 92 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 18:17:39,896 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 92 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 18:17:39,896 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-07 18:17:39,899 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 59. [2022-04-07 18:17:39,899 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:17:39,899 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 18:17:39,899 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 18:17:39,899 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 18:17:39,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:39,902 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-07 18:17:39,902 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 77 transitions. [2022-04-07 18:17:39,902 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:17:39,902 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:17:39,902 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 18:17:39,903 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 18:17:39,904 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:39,904 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-07 18:17:39,905 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 77 transitions. [2022-04-07 18:17:39,905 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:17:39,905 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:17:39,905 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:17:39,905 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:17:39,905 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 18:17:39,910 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 67 transitions. [2022-04-07 18:17:39,910 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 67 transitions. Word has length 23 [2022-04-07 18:17:39,910 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:17:39,910 INFO L478 AbstractCegarLoop]: Abstraction has 59 states and 67 transitions. [2022-04-07 18:17:39,910 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 18:17:39,910 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 67 transitions. [2022-04-07 18:17:39,910 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-07 18:17:39,911 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:17:39,911 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 18:17:39,935 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-07 18:17:40,111 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:17:40,111 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:17:40,112 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:17:40,112 INFO L85 PathProgramCache]: Analyzing trace with hash -2036751370, now seen corresponding path program 1 times [2022-04-07 18:17:40,112 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:17:40,112 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1193274471] [2022-04-07 18:17:40,112 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:17:40,112 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:17:40,133 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:17:40,134 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1837414078] [2022-04-07 18:17:40,134 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:17:40,134 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:17:40,134 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:17:40,135 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:17:40,139 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-07 18:17:40,198 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:40,199 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-07 18:17:40,213 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:40,214 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:17:40,596 INFO L272 TraceCheckUtils]: 0: Hoare triple {1015#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:40,596 INFO L290 TraceCheckUtils]: 1: Hoare triple {1015#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1015#true} is VALID [2022-04-07 18:17:40,605 INFO L290 TraceCheckUtils]: 2: Hoare triple {1015#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:40,606 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1015#true} {1015#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:40,606 INFO L272 TraceCheckUtils]: 4: Hoare triple {1015#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:40,609 INFO L290 TraceCheckUtils]: 5: Hoare triple {1015#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1035#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:40,609 INFO L290 TraceCheckUtils]: 6: Hoare triple {1035#(and (= main_~x~0 0) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1035#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:40,610 INFO L290 TraceCheckUtils]: 7: Hoare triple {1035#(and (= main_~x~0 0) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1035#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:40,610 INFO L272 TraceCheckUtils]: 8: Hoare triple {1035#(and (= main_~x~0 0) (= main_~y~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1015#true} is VALID [2022-04-07 18:17:40,610 INFO L290 TraceCheckUtils]: 9: Hoare triple {1015#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1015#true} is VALID [2022-04-07 18:17:40,610 INFO L290 TraceCheckUtils]: 10: Hoare triple {1015#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:40,610 INFO L290 TraceCheckUtils]: 11: Hoare triple {1015#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:40,611 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1015#true} {1035#(and (= main_~x~0 0) (= main_~y~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1035#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:40,611 INFO L290 TraceCheckUtils]: 13: Hoare triple {1035#(and (= main_~x~0 0) (= main_~y~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1060#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-07 18:17:40,612 INFO L290 TraceCheckUtils]: 14: Hoare triple {1060#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {1064#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= (+ (- 1) main_~y~0) 0))} is VALID [2022-04-07 18:17:40,612 INFO L290 TraceCheckUtils]: 15: Hoare triple {1064#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= (+ (- 1) main_~y~0) 0))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1068#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} is VALID [2022-04-07 18:17:40,613 INFO L290 TraceCheckUtils]: 16: Hoare triple {1068#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1068#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} is VALID [2022-04-07 18:17:40,613 INFO L290 TraceCheckUtils]: 17: Hoare triple {1068#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1075#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} is VALID [2022-04-07 18:17:40,613 INFO L272 TraceCheckUtils]: 18: Hoare triple {1075#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1015#true} is VALID [2022-04-07 18:17:40,614 INFO L290 TraceCheckUtils]: 19: Hoare triple {1015#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1082#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:17:40,614 INFO L290 TraceCheckUtils]: 20: Hoare triple {1082#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:17:40,615 INFO L290 TraceCheckUtils]: 21: Hoare triple {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:17:40,616 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} {1075#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1093#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0))} is VALID [2022-04-07 18:17:40,616 INFO L290 TraceCheckUtils]: 23: Hoare triple {1093#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1097#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)))} is VALID [2022-04-07 18:17:40,617 INFO L290 TraceCheckUtils]: 24: Hoare triple {1097#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1101#(and (not (<= 1 main_~X~0)) (= (+ (- 1) main_~y~0) 0) (= main_~y~0 main_~xy~0) (<= 0 main_~X~0) (= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (* main_~Y~0 4)) (= main_~Y~0 main_~yx~0))} is VALID [2022-04-07 18:17:40,618 INFO L272 TraceCheckUtils]: 25: Hoare triple {1101#(and (not (<= 1 main_~X~0)) (= (+ (- 1) main_~y~0) 0) (= main_~y~0 main_~xy~0) (<= 0 main_~X~0) (= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (* main_~Y~0 4)) (= main_~Y~0 main_~yx~0))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1105#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:17:40,618 INFO L290 TraceCheckUtils]: 26: Hoare triple {1105#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1109#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:17:40,618 INFO L290 TraceCheckUtils]: 27: Hoare triple {1109#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1016#false} is VALID [2022-04-07 18:17:40,619 INFO L290 TraceCheckUtils]: 28: Hoare triple {1016#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1016#false} is VALID [2022-04-07 18:17:40,619 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 18:17:40,619 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:17:41,250 INFO L290 TraceCheckUtils]: 28: Hoare triple {1016#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1016#false} is VALID [2022-04-07 18:17:41,251 INFO L290 TraceCheckUtils]: 27: Hoare triple {1109#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1016#false} is VALID [2022-04-07 18:17:41,251 INFO L290 TraceCheckUtils]: 26: Hoare triple {1105#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1109#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:17:41,252 INFO L272 TraceCheckUtils]: 25: Hoare triple {1125#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1105#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:17:41,252 INFO L290 TraceCheckUtils]: 24: Hoare triple {1129#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1125#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} is VALID [2022-04-07 18:17:41,253 INFO L290 TraceCheckUtils]: 23: Hoare triple {1133#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1129#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-07 18:17:41,254 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} {1137#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1133#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is VALID [2022-04-07 18:17:41,254 INFO L290 TraceCheckUtils]: 21: Hoare triple {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:17:41,254 INFO L290 TraceCheckUtils]: 20: Hoare triple {1147#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1086#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:17:41,255 INFO L290 TraceCheckUtils]: 19: Hoare triple {1015#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1147#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 18:17:41,255 INFO L272 TraceCheckUtils]: 18: Hoare triple {1137#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1015#true} is VALID [2022-04-07 18:17:41,256 INFO L290 TraceCheckUtils]: 17: Hoare triple {1154#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1137#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is VALID [2022-04-07 18:17:41,256 INFO L290 TraceCheckUtils]: 16: Hoare triple {1154#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1154#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} is VALID [2022-04-07 18:17:41,258 INFO L290 TraceCheckUtils]: 15: Hoare triple {1161#(or (<= (+ main_~x~0 1) main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* (* (+ main_~x~0 1) main_~y~0) 2) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* (+ main_~x~0 1) main_~Y~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1154#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} is VALID [2022-04-07 18:17:41,259 INFO L290 TraceCheckUtils]: 14: Hoare triple {1165#(or (forall ((main_~Y~0 Int)) (= (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0)) (* 2 (* (+ main_~x~0 1) (+ main_~y~0 1))) (* (* main_~X~0 (+ main_~y~0 1)) (- 2))) (+ 2 (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))) (<= (+ main_~x~0 1) main_~X~0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {1161#(or (<= (+ main_~x~0 1) main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* (* (+ main_~x~0 1) main_~y~0) 2) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* (+ main_~x~0 1) main_~Y~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))))} is VALID [2022-04-07 18:17:41,260 INFO L290 TraceCheckUtils]: 13: Hoare triple {1015#true} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1165#(or (forall ((main_~Y~0 Int)) (= (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0)) (* 2 (* (+ main_~x~0 1) (+ main_~y~0 1))) (* (* main_~X~0 (+ main_~y~0 1)) (- 2))) (+ 2 (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 18:17:41,260 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1015#true} {1015#true} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1015#true} is VALID [2022-04-07 18:17:41,260 INFO L290 TraceCheckUtils]: 11: Hoare triple {1015#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:41,260 INFO L290 TraceCheckUtils]: 10: Hoare triple {1015#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:41,261 INFO L290 TraceCheckUtils]: 9: Hoare triple {1015#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1015#true} is VALID [2022-04-07 18:17:41,261 INFO L272 TraceCheckUtils]: 8: Hoare triple {1015#true} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1015#true} is VALID [2022-04-07 18:17:41,261 INFO L290 TraceCheckUtils]: 7: Hoare triple {1015#true} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1015#true} is VALID [2022-04-07 18:17:41,261 INFO L290 TraceCheckUtils]: 6: Hoare triple {1015#true} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1015#true} is VALID [2022-04-07 18:17:41,261 INFO L290 TraceCheckUtils]: 5: Hoare triple {1015#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1015#true} is VALID [2022-04-07 18:17:41,261 INFO L272 TraceCheckUtils]: 4: Hoare triple {1015#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:41,261 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1015#true} {1015#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:41,261 INFO L290 TraceCheckUtils]: 2: Hoare triple {1015#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:41,261 INFO L290 TraceCheckUtils]: 1: Hoare triple {1015#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1015#true} is VALID [2022-04-07 18:17:41,261 INFO L272 TraceCheckUtils]: 0: Hoare triple {1015#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1015#true} is VALID [2022-04-07 18:17:41,262 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 18:17:41,262 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:17:41,262 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1193274471] [2022-04-07 18:17:41,262 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:17:41,262 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1837414078] [2022-04-07 18:17:41,262 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1837414078] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:17:41,262 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:17:41,262 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 22 [2022-04-07 18:17:41,262 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1621449244] [2022-04-07 18:17:41,262 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:17:41,263 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 18:17:41,263 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:17:41,263 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 18:17:41,298 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 18:17:41,298 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-07 18:17:41,298 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:17:41,298 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-07 18:17:41,299 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-07 18:17:41,299 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 18:17:42,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:42,069 INFO L93 Difference]: Finished difference Result 82 states and 95 transitions. [2022-04-07 18:17:42,069 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-07 18:17:42,069 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 18:17:42,070 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:17:42,070 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 18:17:42,071 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 59 transitions. [2022-04-07 18:17:42,072 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 18:17:42,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 59 transitions. [2022-04-07 18:17:42,073 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 59 transitions. [2022-04-07 18:17:42,139 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:17:42,141 INFO L225 Difference]: With dead ends: 82 [2022-04-07 18:17:42,141 INFO L226 Difference]: Without dead ends: 76 [2022-04-07 18:17:42,141 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 37 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 259 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=216, Invalid=1116, Unknown=0, NotChecked=0, Total=1332 [2022-04-07 18:17:42,142 INFO L913 BasicCegarLoop]: 15 mSDtfsCounter, 42 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 176 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 111 SdHoareTripleChecker+Invalid, 275 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 176 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 72 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 18:17:42,142 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [43 Valid, 111 Invalid, 275 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 176 Invalid, 0 Unknown, 72 Unchecked, 0.2s Time] [2022-04-07 18:17:42,142 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-07 18:17:42,145 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 67. [2022-04-07 18:17:42,145 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:17:42,145 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 18:17:42,146 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 18:17:42,146 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 18:17:42,148 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:42,148 INFO L93 Difference]: Finished difference Result 76 states and 87 transitions. [2022-04-07 18:17:42,148 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 87 transitions. [2022-04-07 18:17:42,148 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:17:42,148 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:17:42,148 INFO L74 IsIncluded]: Start isIncluded. First operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 76 states. [2022-04-07 18:17:42,148 INFO L87 Difference]: Start difference. First operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 76 states. [2022-04-07 18:17:42,150 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:17:42,150 INFO L93 Difference]: Finished difference Result 76 states and 87 transitions. [2022-04-07 18:17:42,150 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 87 transitions. [2022-04-07 18:17:42,151 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:17:42,151 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:17:42,151 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:17:42,151 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:17:42,151 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 18:17:42,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 76 transitions. [2022-04-07 18:17:42,153 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 76 transitions. Word has length 29 [2022-04-07 18:17:42,153 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:17:42,153 INFO L478 AbstractCegarLoop]: Abstraction has 67 states and 76 transitions. [2022-04-07 18:17:42,153 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 18:17:42,153 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 76 transitions. [2022-04-07 18:17:42,153 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-07 18:17:42,153 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:17:42,153 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 18:17:42,173 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-07 18:17:42,367 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:17:42,367 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:17:42,368 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:17:42,368 INFO L85 PathProgramCache]: Analyzing trace with hash -782335822, now seen corresponding path program 1 times [2022-04-07 18:17:42,368 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:17:42,368 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1430459780] [2022-04-07 18:17:42,368 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:17:42,368 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:17:42,378 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:17:42,378 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [815480732] [2022-04-07 18:17:42,378 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:17:42,378 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:17:42,378 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:17:42,386 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:17:42,399 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-07 18:17:42,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:42,448 INFO L263 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-07 18:17:42,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:17:42,463 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:17:59,173 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:18:08,532 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:18:23,187 INFO L272 TraceCheckUtils]: 0: Hoare triple {1542#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:23,187 INFO L290 TraceCheckUtils]: 1: Hoare triple {1542#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1542#true} is VALID [2022-04-07 18:18:23,187 INFO L290 TraceCheckUtils]: 2: Hoare triple {1542#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:23,187 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1542#true} {1542#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:23,187 INFO L272 TraceCheckUtils]: 4: Hoare triple {1542#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:23,188 INFO L290 TraceCheckUtils]: 5: Hoare triple {1542#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1562#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} is VALID [2022-04-07 18:18:23,188 INFO L290 TraceCheckUtils]: 6: Hoare triple {1562#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1562#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} is VALID [2022-04-07 18:18:23,189 INFO L290 TraceCheckUtils]: 7: Hoare triple {1562#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1569#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} is VALID [2022-04-07 18:18:23,189 INFO L272 TraceCheckUtils]: 8: Hoare triple {1569#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1542#true} is VALID [2022-04-07 18:18:23,189 INFO L290 TraceCheckUtils]: 9: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1576#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:18:23,190 INFO L290 TraceCheckUtils]: 10: Hoare triple {1576#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:18:23,190 INFO L290 TraceCheckUtils]: 11: Hoare triple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:18:23,191 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} {1569#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:23,191 INFO L290 TraceCheckUtils]: 13: Hoare triple {1587#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:23,195 INFO L290 TraceCheckUtils]: 14: Hoare triple {1587#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:23,195 INFO L290 TraceCheckUtils]: 15: Hoare triple {1587#(= main_~y~0 0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:23,196 INFO L290 TraceCheckUtils]: 16: Hoare triple {1587#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:23,196 INFO L290 TraceCheckUtils]: 17: Hoare triple {1587#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:23,196 INFO L272 TraceCheckUtils]: 18: Hoare triple {1587#(= main_~y~0 0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1542#true} is VALID [2022-04-07 18:18:23,196 INFO L290 TraceCheckUtils]: 19: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1542#true} is VALID [2022-04-07 18:18:23,196 INFO L290 TraceCheckUtils]: 20: Hoare triple {1542#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:23,196 INFO L290 TraceCheckUtils]: 21: Hoare triple {1542#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:23,197 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1542#true} {1587#(= main_~y~0 0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:23,197 INFO L290 TraceCheckUtils]: 23: Hoare triple {1587#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:23,198 INFO L290 TraceCheckUtils]: 24: Hoare triple {1587#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:23,198 INFO L290 TraceCheckUtils]: 25: Hoare triple {1587#(= main_~y~0 0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:23,201 INFO L290 TraceCheckUtils]: 26: Hoare triple {1587#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:23,201 INFO L290 TraceCheckUtils]: 27: Hoare triple {1587#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1633#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} is VALID [2022-04-07 18:18:23,202 INFO L272 TraceCheckUtils]: 28: Hoare triple {1633#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1542#true} is VALID [2022-04-07 18:18:23,202 INFO L290 TraceCheckUtils]: 29: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1576#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:18:23,202 INFO L290 TraceCheckUtils]: 30: Hoare triple {1576#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:18:23,202 INFO L290 TraceCheckUtils]: 31: Hoare triple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:18:23,204 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} {1633#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1649#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} is VALID [2022-04-07 18:18:23,204 INFO L290 TraceCheckUtils]: 33: Hoare triple {1649#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1649#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} is VALID [2022-04-07 18:18:25,206 WARN L290 TraceCheckUtils]: 34: Hoare triple {1649#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1656#(and (= main_~y~0 0) (or (and (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~xy~0 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)))) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} is UNKNOWN [2022-04-07 18:18:25,215 INFO L272 TraceCheckUtils]: 35: Hoare triple {1656#(and (= main_~y~0 0) (or (and (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~xy~0 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)))) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1660#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:18:25,215 INFO L290 TraceCheckUtils]: 36: Hoare triple {1660#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1664#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:18:25,215 INFO L290 TraceCheckUtils]: 37: Hoare triple {1664#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1543#false} is VALID [2022-04-07 18:18:25,216 INFO L290 TraceCheckUtils]: 38: Hoare triple {1543#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#false} is VALID [2022-04-07 18:18:25,216 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 18:18:25,216 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:18:27,115 INFO L290 TraceCheckUtils]: 38: Hoare triple {1543#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#false} is VALID [2022-04-07 18:18:27,115 INFO L290 TraceCheckUtils]: 37: Hoare triple {1664#(<= 1 __VERIFIER_assert_~cond)} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1543#false} is VALID [2022-04-07 18:18:27,116 INFO L290 TraceCheckUtils]: 36: Hoare triple {1660#(<= 1 |__VERIFIER_assert_#in~cond|)} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1664#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:18:27,117 INFO L272 TraceCheckUtils]: 35: Hoare triple {1680#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {1660#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:18:27,117 INFO L290 TraceCheckUtils]: 34: Hoare triple {1684#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {1680#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} is VALID [2022-04-07 18:18:27,118 INFO L290 TraceCheckUtils]: 33: Hoare triple {1684#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {1684#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-07 18:18:27,119 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} {1691#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1684#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-07 18:18:27,119 INFO L290 TraceCheckUtils]: 31: Hoare triple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:18:27,120 INFO L290 TraceCheckUtils]: 30: Hoare triple {1701#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:18:27,120 INFO L290 TraceCheckUtils]: 29: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1701#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 18:18:27,120 INFO L272 TraceCheckUtils]: 28: Hoare triple {1691#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1542#true} is VALID [2022-04-07 18:18:27,121 INFO L290 TraceCheckUtils]: 27: Hoare triple {1587#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1691#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-07 18:18:27,121 INFO L290 TraceCheckUtils]: 26: Hoare triple {1587#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:27,121 INFO L290 TraceCheckUtils]: 25: Hoare triple {1587#(= main_~y~0 0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:27,122 INFO L290 TraceCheckUtils]: 24: Hoare triple {1587#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:27,122 INFO L290 TraceCheckUtils]: 23: Hoare triple {1587#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:27,123 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1542#true} {1587#(= main_~y~0 0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:27,123 INFO L290 TraceCheckUtils]: 21: Hoare triple {1542#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:27,123 INFO L290 TraceCheckUtils]: 20: Hoare triple {1542#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:27,123 INFO L290 TraceCheckUtils]: 19: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1542#true} is VALID [2022-04-07 18:18:27,124 INFO L272 TraceCheckUtils]: 18: Hoare triple {1587#(= main_~y~0 0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1542#true} is VALID [2022-04-07 18:18:27,124 INFO L290 TraceCheckUtils]: 17: Hoare triple {1587#(= main_~y~0 0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:27,124 INFO L290 TraceCheckUtils]: 16: Hoare triple {1587#(= main_~y~0 0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:27,125 INFO L290 TraceCheckUtils]: 15: Hoare triple {1587#(= main_~y~0 0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:27,125 INFO L290 TraceCheckUtils]: 14: Hoare triple {1587#(= main_~y~0 0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:27,125 INFO L290 TraceCheckUtils]: 13: Hoare triple {1587#(= main_~y~0 0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:27,126 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} {1753#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1587#(= main_~y~0 0)} is VALID [2022-04-07 18:18:27,126 INFO L290 TraceCheckUtils]: 11: Hoare triple {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:18:27,131 INFO L290 TraceCheckUtils]: 10: Hoare triple {1701#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1580#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:18:27,131 INFO L290 TraceCheckUtils]: 9: Hoare triple {1542#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1701#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 18:18:27,132 INFO L272 TraceCheckUtils]: 8: Hoare triple {1753#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {1542#true} is VALID [2022-04-07 18:18:27,133 INFO L290 TraceCheckUtils]: 7: Hoare triple {1769#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {1753#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} is VALID [2022-04-07 18:18:27,134 INFO L290 TraceCheckUtils]: 6: Hoare triple {1769#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1769#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} is VALID [2022-04-07 18:18:27,135 INFO L290 TraceCheckUtils]: 5: Hoare triple {1542#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {1769#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} is VALID [2022-04-07 18:18:27,135 INFO L272 TraceCheckUtils]: 4: Hoare triple {1542#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:27,135 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1542#true} {1542#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:27,135 INFO L290 TraceCheckUtils]: 2: Hoare triple {1542#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:27,136 INFO L290 TraceCheckUtils]: 1: Hoare triple {1542#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1542#true} is VALID [2022-04-07 18:18:27,136 INFO L272 TraceCheckUtils]: 0: Hoare triple {1542#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1542#true} is VALID [2022-04-07 18:18:27,136 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 18:18:27,136 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:18:27,136 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1430459780] [2022-04-07 18:18:27,136 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:18:27,136 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [815480732] [2022-04-07 18:18:27,136 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [815480732] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:18:27,136 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:18:27,137 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 18 [2022-04-07 18:18:27,137 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [955809276] [2022-04-07 18:18:27,137 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:18:27,137 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 18:18:27,138 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:18:27,138 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 18:18:29,179 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 44 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 18:18:29,179 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-07 18:18:29,179 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:18:29,179 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-07 18:18:29,179 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=247, Unknown=1, NotChecked=0, Total=306 [2022-04-07 18:18:29,180 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 18:18:31,557 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 18:18:35,629 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 18:18:37,655 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 18:18:40,137 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:18:40,137 INFO L93 Difference]: Finished difference Result 94 states and 111 transitions. [2022-04-07 18:18:40,137 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-07 18:18:40,138 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 18:18:40,138 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:18:40,138 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 18:18:40,139 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 48 transitions. [2022-04-07 18:18:40,139 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 18:18:40,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 48 transitions. [2022-04-07 18:18:40,140 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 48 transitions. [2022-04-07 18:18:42,180 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 47 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 18:18:42,182 INFO L225 Difference]: With dead ends: 94 [2022-04-07 18:18:42,182 INFO L226 Difference]: Without dead ends: 90 [2022-04-07 18:18:42,182 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 59 SyntacticMatches, 2 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 6.7s TimeCoverageRelationStatistics Valid=117, Invalid=432, Unknown=3, NotChecked=0, Total=552 [2022-04-07 18:18:42,183 INFO L913 BasicCegarLoop]: 12 mSDtfsCounter, 34 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 185 mSolverCounterSat, 25 mSolverCounterUnsat, 3 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 213 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 185 IncrementalHoareTripleChecker+Invalid, 3 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.2s IncrementalHoareTripleChecker+Time [2022-04-07 18:18:42,183 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 129 Invalid, 213 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 185 Invalid, 3 Unknown, 0 Unchecked, 6.2s Time] [2022-04-07 18:18:42,183 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-07 18:18:42,186 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 88. [2022-04-07 18:18:42,186 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:18:42,187 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 18:18:42,187 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 18:18:42,187 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 18:18:42,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:18:42,189 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2022-04-07 18:18:42,189 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 106 transitions. [2022-04-07 18:18:42,189 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:18:42,189 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:18:42,190 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 18:18:42,190 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 18:18:42,192 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:18:42,192 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2022-04-07 18:18:42,192 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 106 transitions. [2022-04-07 18:18:42,192 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:18:42,192 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:18:42,192 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:18:42,192 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:18:42,192 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 18:18:42,194 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 104 transitions. [2022-04-07 18:18:42,194 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 104 transitions. Word has length 39 [2022-04-07 18:18:42,194 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:18:42,194 INFO L478 AbstractCegarLoop]: Abstraction has 88 states and 104 transitions. [2022-04-07 18:18:42,194 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 18:18:42,194 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 104 transitions. [2022-04-07 18:18:42,195 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-07 18:18:42,195 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:18:42,195 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 18:18:42,211 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-07 18:18:42,411 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:18:42,412 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:18:42,412 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:18:42,412 INFO L85 PathProgramCache]: Analyzing trace with hash 1435422131, now seen corresponding path program 1 times [2022-04-07 18:18:42,412 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:18:42,412 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1789159591] [2022-04-07 18:18:42,412 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:18:42,413 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:18:42,425 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:18:42,425 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1774015407] [2022-04-07 18:18:42,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:18:42,425 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:18:42,425 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:18:42,426 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:18:42,427 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-07 18:18:42,465 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:18:42,466 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 18:18:42,476 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:18:42,477 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:18:43,384 INFO L272 TraceCheckUtils]: 0: Hoare triple {2167#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,385 INFO L290 TraceCheckUtils]: 1: Hoare triple {2167#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2167#true} is VALID [2022-04-07 18:18:43,387 INFO L290 TraceCheckUtils]: 2: Hoare triple {2167#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,387 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2167#true} {2167#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,387 INFO L272 TraceCheckUtils]: 4: Hoare triple {2167#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,389 INFO L290 TraceCheckUtils]: 5: Hoare triple {2167#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-07 18:18:43,389 INFO L290 TraceCheckUtils]: 6: Hoare triple {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-07 18:18:43,389 INFO L290 TraceCheckUtils]: 7: Hoare triple {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-07 18:18:43,390 INFO L272 TraceCheckUtils]: 8: Hoare triple {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2167#true} is VALID [2022-04-07 18:18:43,390 INFO L290 TraceCheckUtils]: 9: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-07 18:18:43,390 INFO L290 TraceCheckUtils]: 10: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,390 INFO L290 TraceCheckUtils]: 11: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,391 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2167#true} {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-07 18:18:43,391 INFO L290 TraceCheckUtils]: 13: Hoare triple {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-07 18:18:43,392 INFO L290 TraceCheckUtils]: 14: Hoare triple {2187#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {2215#(and (<= main_~x~0 0) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-07 18:18:43,393 INFO L290 TraceCheckUtils]: 15: Hoare triple {2215#(and (<= main_~x~0 0) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-07 18:18:43,393 INFO L290 TraceCheckUtils]: 16: Hoare triple {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-07 18:18:43,394 INFO L290 TraceCheckUtils]: 17: Hoare triple {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-07 18:18:43,394 INFO L272 TraceCheckUtils]: 18: Hoare triple {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2167#true} is VALID [2022-04-07 18:18:43,394 INFO L290 TraceCheckUtils]: 19: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-07 18:18:43,394 INFO L290 TraceCheckUtils]: 20: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,394 INFO L290 TraceCheckUtils]: 21: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,395 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2167#true} {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-07 18:18:43,395 INFO L290 TraceCheckUtils]: 23: Hoare triple {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-07 18:18:43,396 INFO L290 TraceCheckUtils]: 24: Hoare triple {2219#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2247#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} is VALID [2022-04-07 18:18:43,396 INFO L290 TraceCheckUtils]: 25: Hoare triple {2247#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-07 18:18:43,397 INFO L290 TraceCheckUtils]: 26: Hoare triple {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-07 18:18:43,397 INFO L290 TraceCheckUtils]: 27: Hoare triple {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-07 18:18:43,397 INFO L272 TraceCheckUtils]: 28: Hoare triple {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2167#true} is VALID [2022-04-07 18:18:43,398 INFO L290 TraceCheckUtils]: 29: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-07 18:18:43,398 INFO L290 TraceCheckUtils]: 30: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,398 INFO L290 TraceCheckUtils]: 31: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,399 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2167#true} {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-07 18:18:43,400 INFO L290 TraceCheckUtils]: 33: Hoare triple {2251#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-07 18:18:43,400 INFO L290 TraceCheckUtils]: 34: Hoare triple {2168#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2168#false} is VALID [2022-04-07 18:18:43,400 INFO L272 TraceCheckUtils]: 35: Hoare triple {2168#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2168#false} is VALID [2022-04-07 18:18:43,400 INFO L290 TraceCheckUtils]: 36: Hoare triple {2168#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2168#false} is VALID [2022-04-07 18:18:43,400 INFO L290 TraceCheckUtils]: 37: Hoare triple {2168#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-07 18:18:43,400 INFO L290 TraceCheckUtils]: 38: Hoare triple {2168#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-07 18:18:43,402 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 18:18:43,402 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:18:43,746 INFO L290 TraceCheckUtils]: 38: Hoare triple {2168#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-07 18:18:43,746 INFO L290 TraceCheckUtils]: 37: Hoare triple {2168#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-07 18:18:43,746 INFO L290 TraceCheckUtils]: 36: Hoare triple {2168#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2168#false} is VALID [2022-04-07 18:18:43,746 INFO L272 TraceCheckUtils]: 35: Hoare triple {2168#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2168#false} is VALID [2022-04-07 18:18:43,746 INFO L290 TraceCheckUtils]: 34: Hoare triple {2168#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2168#false} is VALID [2022-04-07 18:18:43,747 INFO L290 TraceCheckUtils]: 33: Hoare triple {2306#(<= main_~x~0 main_~X~0)} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {2168#false} is VALID [2022-04-07 18:18:43,747 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2167#true} {2306#(<= main_~x~0 main_~X~0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2306#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 18:18:43,747 INFO L290 TraceCheckUtils]: 31: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,747 INFO L290 TraceCheckUtils]: 30: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,747 INFO L290 TraceCheckUtils]: 29: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-07 18:18:43,748 INFO L272 TraceCheckUtils]: 28: Hoare triple {2306#(<= main_~x~0 main_~X~0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2167#true} is VALID [2022-04-07 18:18:43,748 INFO L290 TraceCheckUtils]: 27: Hoare triple {2306#(<= main_~x~0 main_~X~0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2306#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 18:18:43,748 INFO L290 TraceCheckUtils]: 26: Hoare triple {2306#(<= main_~x~0 main_~X~0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2306#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 18:18:43,750 INFO L290 TraceCheckUtils]: 25: Hoare triple {2331#(<= (+ main_~x~0 1) main_~X~0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2306#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 18:18:43,750 INFO L290 TraceCheckUtils]: 24: Hoare triple {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2331#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 18:18:43,751 INFO L290 TraceCheckUtils]: 23: Hoare triple {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 18:18:43,751 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2167#true} {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 18:18:43,751 INFO L290 TraceCheckUtils]: 21: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,752 INFO L290 TraceCheckUtils]: 20: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,752 INFO L290 TraceCheckUtils]: 19: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-07 18:18:43,752 INFO L272 TraceCheckUtils]: 18: Hoare triple {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2167#true} is VALID [2022-04-07 18:18:43,752 INFO L290 TraceCheckUtils]: 17: Hoare triple {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 18:18:43,753 INFO L290 TraceCheckUtils]: 16: Hoare triple {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 18:18:43,753 INFO L290 TraceCheckUtils]: 15: Hoare triple {2363#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2335#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-07 18:18:43,754 INFO L290 TraceCheckUtils]: 14: Hoare triple {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {2363#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} is VALID [2022-04-07 18:18:43,754 INFO L290 TraceCheckUtils]: 13: Hoare triple {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-07 18:18:43,755 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2167#true} {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-07 18:18:43,755 INFO L290 TraceCheckUtils]: 11: Hoare triple {2167#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,755 INFO L290 TraceCheckUtils]: 10: Hoare triple {2167#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,755 INFO L290 TraceCheckUtils]: 9: Hoare triple {2167#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2167#true} is VALID [2022-04-07 18:18:43,755 INFO L272 TraceCheckUtils]: 8: Hoare triple {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2167#true} is VALID [2022-04-07 18:18:43,756 INFO L290 TraceCheckUtils]: 7: Hoare triple {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-07 18:18:43,756 INFO L290 TraceCheckUtils]: 6: Hoare triple {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-07 18:18:43,757 INFO L290 TraceCheckUtils]: 5: Hoare triple {2167#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {2367#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-07 18:18:43,757 INFO L272 TraceCheckUtils]: 4: Hoare triple {2167#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,757 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2167#true} {2167#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,757 INFO L290 TraceCheckUtils]: 2: Hoare triple {2167#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,757 INFO L290 TraceCheckUtils]: 1: Hoare triple {2167#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2167#true} is VALID [2022-04-07 18:18:43,757 INFO L272 TraceCheckUtils]: 0: Hoare triple {2167#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2167#true} is VALID [2022-04-07 18:18:43,758 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 18:18:43,758 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:18:43,758 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1789159591] [2022-04-07 18:18:43,758 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:18:43,758 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1774015407] [2022-04-07 18:18:43,758 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1774015407] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:18:43,758 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:18:43,758 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-07 18:18:43,759 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [277626383] [2022-04-07 18:18:43,759 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:18:43,760 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 18:18:43,761 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:18:43,761 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 18:18:43,806 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:18:43,806 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-07 18:18:43,806 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:18:43,807 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-07 18:18:43,807 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-07 18:18:43,807 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 18:18:44,270 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:18:44,270 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-07 18:18:44,270 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 18:18:44,270 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 18:18:44,270 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:18:44,271 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 18:18:44,272 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 49 transitions. [2022-04-07 18:18:44,272 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 18:18:44,273 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 49 transitions. [2022-04-07 18:18:44,273 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 49 transitions. [2022-04-07 18:18:44,315 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 18:18:44,317 INFO L225 Difference]: With dead ends: 91 [2022-04-07 18:18:44,317 INFO L226 Difference]: Without dead ends: 91 [2022-04-07 18:18:44,317 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 67 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=59, Invalid=181, Unknown=0, NotChecked=0, Total=240 [2022-04-07 18:18:44,318 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 5 mSDsluCounter, 89 mSDsCounter, 0 mSdLazyCounter, 157 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 166 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 157 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 18:18:44,318 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 115 Invalid, 166 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 157 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 18:18:44,318 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-04-07 18:18:44,321 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 83. [2022-04-07 18:18:44,321 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:18:44,322 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 18:18:44,322 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 18:18:44,322 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 18:18:44,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:18:44,325 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-07 18:18:44,325 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 107 transitions. [2022-04-07 18:18:44,325 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:18:44,325 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:18:44,325 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 18:18:44,326 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 18:18:44,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:18:44,328 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-07 18:18:44,328 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 107 transitions. [2022-04-07 18:18:44,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:18:44,329 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:18:44,329 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:18:44,329 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:18:44,329 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 18:18:44,331 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 97 transitions. [2022-04-07 18:18:44,331 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 97 transitions. Word has length 39 [2022-04-07 18:18:44,331 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:18:44,331 INFO L478 AbstractCegarLoop]: Abstraction has 83 states and 97 transitions. [2022-04-07 18:18:44,331 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 18:18:44,331 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 97 transitions. [2022-04-07 18:18:44,332 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-07 18:18:44,332 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:18:44,332 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 18:18:44,358 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-07 18:18:44,545 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:18:44,545 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:18:44,546 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:18:44,546 INFO L85 PathProgramCache]: Analyzing trace with hash 1628716144, now seen corresponding path program 2 times [2022-04-07 18:18:44,546 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:18:44,546 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2126661345] [2022-04-07 18:18:44,546 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:18:44,546 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:18:44,556 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:18:44,556 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1173167548] [2022-04-07 18:18:44,556 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-07 18:18:44,556 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:18:44,556 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:18:44,557 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:18:44,558 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-07 18:18:44,598 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-07 18:18:44,598 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 18:18:44,599 INFO L263 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 18:18:44,608 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:18:44,609 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:18:45,462 INFO L272 TraceCheckUtils]: 0: Hoare triple {2776#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,462 INFO L290 TraceCheckUtils]: 1: Hoare triple {2776#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2776#true} is VALID [2022-04-07 18:18:45,463 INFO L290 TraceCheckUtils]: 2: Hoare triple {2776#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,463 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2776#true} {2776#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,463 INFO L272 TraceCheckUtils]: 4: Hoare triple {2776#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,463 INFO L290 TraceCheckUtils]: 5: Hoare triple {2776#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-07 18:18:45,464 INFO L290 TraceCheckUtils]: 6: Hoare triple {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-07 18:18:45,464 INFO L290 TraceCheckUtils]: 7: Hoare triple {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-07 18:18:45,464 INFO L272 TraceCheckUtils]: 8: Hoare triple {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2776#true} is VALID [2022-04-07 18:18:45,464 INFO L290 TraceCheckUtils]: 9: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-07 18:18:45,464 INFO L290 TraceCheckUtils]: 10: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,464 INFO L290 TraceCheckUtils]: 11: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,472 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2776#true} {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-07 18:18:45,473 INFO L290 TraceCheckUtils]: 13: Hoare triple {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-07 18:18:45,474 INFO L290 TraceCheckUtils]: 14: Hoare triple {2796#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2824#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 18:18:45,474 INFO L290 TraceCheckUtils]: 15: Hoare triple {2824#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 18:18:45,475 INFO L290 TraceCheckUtils]: 16: Hoare triple {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 18:18:45,477 INFO L290 TraceCheckUtils]: 17: Hoare triple {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 18:18:45,477 INFO L272 TraceCheckUtils]: 18: Hoare triple {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2776#true} is VALID [2022-04-07 18:18:45,477 INFO L290 TraceCheckUtils]: 19: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-07 18:18:45,477 INFO L290 TraceCheckUtils]: 20: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,477 INFO L290 TraceCheckUtils]: 21: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,478 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2776#true} {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 18:18:45,478 INFO L290 TraceCheckUtils]: 23: Hoare triple {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-07 18:18:45,479 INFO L290 TraceCheckUtils]: 24: Hoare triple {2828#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {2856#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 18:18:45,480 INFO L290 TraceCheckUtils]: 25: Hoare triple {2856#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 18:18:45,480 INFO L290 TraceCheckUtils]: 26: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 18:18:45,481 INFO L290 TraceCheckUtils]: 27: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 18:18:45,481 INFO L272 TraceCheckUtils]: 28: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2776#true} is VALID [2022-04-07 18:18:45,481 INFO L290 TraceCheckUtils]: 29: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-07 18:18:45,481 INFO L290 TraceCheckUtils]: 30: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,481 INFO L290 TraceCheckUtils]: 31: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,482 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2776#true} {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 18:18:45,482 INFO L290 TraceCheckUtils]: 33: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 18:18:45,483 INFO L290 TraceCheckUtils]: 34: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 18:18:45,483 INFO L290 TraceCheckUtils]: 35: Hoare triple {2860#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 18:18:45,484 INFO L290 TraceCheckUtils]: 36: Hoare triple {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 18:18:45,484 INFO L290 TraceCheckUtils]: 37: Hoare triple {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 18:18:45,484 INFO L272 TraceCheckUtils]: 38: Hoare triple {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2776#true} is VALID [2022-04-07 18:18:45,484 INFO L290 TraceCheckUtils]: 39: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-07 18:18:45,485 INFO L290 TraceCheckUtils]: 40: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,485 INFO L290 TraceCheckUtils]: 41: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,486 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2776#true} {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-07 18:18:45,487 INFO L290 TraceCheckUtils]: 43: Hoare triple {2891#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-07 18:18:45,487 INFO L290 TraceCheckUtils]: 44: Hoare triple {2777#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2777#false} is VALID [2022-04-07 18:18:45,487 INFO L272 TraceCheckUtils]: 45: Hoare triple {2777#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2777#false} is VALID [2022-04-07 18:18:45,487 INFO L290 TraceCheckUtils]: 46: Hoare triple {2777#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2777#false} is VALID [2022-04-07 18:18:45,487 INFO L290 TraceCheckUtils]: 47: Hoare triple {2777#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-07 18:18:45,487 INFO L290 TraceCheckUtils]: 48: Hoare triple {2777#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-07 18:18:45,488 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 18:18:45,488 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:18:45,800 INFO L290 TraceCheckUtils]: 48: Hoare triple {2777#false} [87] L15-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-07 18:18:45,801 INFO L290 TraceCheckUtils]: 47: Hoare triple {2777#false} [83] L14-->L15: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-07 18:18:45,801 INFO L290 TraceCheckUtils]: 46: Hoare triple {2777#false} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2777#false} is VALID [2022-04-07 18:18:45,801 INFO L272 TraceCheckUtils]: 45: Hoare triple {2777#false} [76] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= 0 (+ (* v_main_~xy~0_7 (- 2)) (* v_main_~y~0_9 2) (* (- 1) v_main_~X~0_11) (* v_main_~yx~0_7 2) (* (- 1) v_main_~v~0_11) (* 2 v_main_~Y~0_11))) 1 0)) InVars {main_~v~0=v_main_~v~0_11, main_~yx~0=v_main_~yx~0_7, main_~Y~0=v_main_~Y~0_11, main_~X~0=v_main_~X~0_11, main_~xy~0=v_main_~xy~0_7, main_~y~0=v_main_~y~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0, main_~y~0] {2777#false} is VALID [2022-04-07 18:18:45,801 INFO L290 TraceCheckUtils]: 44: Hoare triple {2777#false} [73] L31-4-->L49: Formula: (and (= v_main_~xy~0_1 (* v_main_~x~0_3 v_main_~y~0_1)) (= v_main_~yx~0_1 (* v_main_~Y~0_1 v_main_~x~0_3))) InVars {main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~Y~0=v_main_~Y~0_1} OutVars{main_~xy~0=v_main_~xy~0_1, main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_3, main_~yx~0=v_main_~yx~0_1, main_~Y~0=v_main_~Y~0_1} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0] {2777#false} is VALID [2022-04-07 18:18:45,802 INFO L290 TraceCheckUtils]: 43: Hoare triple {2946#(<= main_~x~0 main_~X~0)} [80] L34-1-->L31-4: Formula: (not (<= v_main_~x~0_8 v_main_~X~0_7)) InVars {main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} OutVars{main_~x~0=v_main_~x~0_8, main_~X~0=v_main_~X~0_7} AuxVars[] AssignedVars[] {2777#false} is VALID [2022-04-07 18:18:45,802 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2776#true} {2946#(<= main_~x~0 main_~X~0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2946#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 18:18:45,802 INFO L290 TraceCheckUtils]: 41: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,802 INFO L290 TraceCheckUtils]: 40: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,802 INFO L290 TraceCheckUtils]: 39: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-07 18:18:45,802 INFO L272 TraceCheckUtils]: 38: Hoare triple {2946#(<= main_~x~0 main_~X~0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2776#true} is VALID [2022-04-07 18:18:45,803 INFO L290 TraceCheckUtils]: 37: Hoare triple {2946#(<= main_~x~0 main_~X~0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2946#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 18:18:45,803 INFO L290 TraceCheckUtils]: 36: Hoare triple {2946#(<= main_~x~0 main_~X~0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2946#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 18:18:45,804 INFO L290 TraceCheckUtils]: 35: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2946#(<= main_~x~0 main_~X~0)} is VALID [2022-04-07 18:18:45,804 INFO L290 TraceCheckUtils]: 34: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 18:18:45,804 INFO L290 TraceCheckUtils]: 33: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 18:18:45,804 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2776#true} {2971#(<= (+ main_~x~0 1) main_~X~0)} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 18:18:45,805 INFO L290 TraceCheckUtils]: 31: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,805 INFO L290 TraceCheckUtils]: 30: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,805 INFO L290 TraceCheckUtils]: 29: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-07 18:18:45,805 INFO L272 TraceCheckUtils]: 28: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2776#true} is VALID [2022-04-07 18:18:45,805 INFO L290 TraceCheckUtils]: 27: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 18:18:45,805 INFO L290 TraceCheckUtils]: 26: Hoare triple {2971#(<= (+ main_~x~0 1) main_~X~0)} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 18:18:45,806 INFO L290 TraceCheckUtils]: 25: Hoare triple {3002#(<= (+ main_~x~0 2) main_~X~0)} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {2971#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-07 18:18:45,806 INFO L290 TraceCheckUtils]: 24: Hoare triple {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [86] L39-->L39-2: Formula: (and (= (+ v_main_~y~0_8 1) v_main_~y~0_7) (not (< v_main_~v~0_9 0)) (= (+ (* v_main_~Y~0_9 2) v_main_~v~0_9 (* (- 2) v_main_~X~0_9)) v_main_~v~0_8)) InVars {main_~y~0=v_main_~y~0_8, main_~v~0=v_main_~v~0_9, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9} OutVars{main_~y~0=v_main_~y~0_7, main_~v~0=v_main_~v~0_8, main_~Y~0=v_main_~Y~0_9, main_~X~0=v_main_~X~0_9, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[main_~v~0, main_~y~0, main_#t~post7] {3002#(<= (+ main_~x~0 2) main_~X~0)} is VALID [2022-04-07 18:18:45,806 INFO L290 TraceCheckUtils]: 23: Hoare triple {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-07 18:18:45,807 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2776#true} {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-07 18:18:45,807 INFO L290 TraceCheckUtils]: 21: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,807 INFO L290 TraceCheckUtils]: 20: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,807 INFO L290 TraceCheckUtils]: 19: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-07 18:18:45,807 INFO L272 TraceCheckUtils]: 18: Hoare triple {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2776#true} is VALID [2022-04-07 18:18:45,807 INFO L290 TraceCheckUtils]: 17: Hoare triple {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-07 18:18:45,808 INFO L290 TraceCheckUtils]: 16: Hoare triple {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-07 18:18:45,808 INFO L290 TraceCheckUtils]: 15: Hoare triple {3034#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} [90] L39-2-->L31-3: Formula: (= v_main_~x~0_1 (+ v_main_~x~0_2 1)) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_1, main_#t~post8=|v_main_#t~post8_1|} AuxVars[] AssignedVars[main_~x~0, main_#t~post8] {3006#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-07 18:18:45,809 INFO L290 TraceCheckUtils]: 14: Hoare triple {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [85] L39-->L39-2: Formula: (and (= v_main_~v~0_6 (+ v_main_~v~0_7 (* v_main_~Y~0_8 2))) (< v_main_~v~0_7 0)) InVars {main_~v~0=v_main_~v~0_7, main_~Y~0=v_main_~Y~0_8} OutVars{main_~v~0=v_main_~v~0_6, main_~Y~0=v_main_~Y~0_8} AuxVars[] AssignedVars[main_~v~0] {3034#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-07 18:18:45,809 INFO L290 TraceCheckUtils]: 13: Hoare triple {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [81] L34-1-->L39: Formula: (<= v_main_~x~0_9 v_main_~X~0_8) InVars {main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} OutVars{main_~x~0=v_main_~x~0_9, main_~X~0=v_main_~X~0_8} AuxVars[] AssignedVars[] {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-07 18:18:45,810 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2776#true} {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [93] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-07 18:18:45,810 INFO L290 TraceCheckUtils]: 11: Hoare triple {2776#true} [89] L14-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,810 INFO L290 TraceCheckUtils]: 10: Hoare triple {2776#true} [84] L14-->L14-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,810 INFO L290 TraceCheckUtils]: 9: Hoare triple {2776#true} [79] __VERIFIER_assertENTRY-->L14: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2776#true} is VALID [2022-04-07 18:18:45,810 INFO L272 TraceCheckUtils]: 8: Hoare triple {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [77] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 1) v_main_~X~0_10) (* (- 1) v_main_~v~0_10) (* v_main_~xy~0_6 (- 2)) (* 2 v_main_~Y~0_10) (* v_main_~yx~0_6 2)) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~xy~0=v_main_~xy~0_6, main_~v~0=v_main_~v~0_10, main_~yx~0=v_main_~yx~0_6, main_~Y~0=v_main_~Y~0_10, main_~X~0=v_main_~X~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~yx~0, main_~Y~0, main_~X~0, main_~xy~0] {2776#true} is VALID [2022-04-07 18:18:45,810 INFO L290 TraceCheckUtils]: 7: Hoare triple {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [75] L31-1-->L34: Formula: (and (< |v_main_#t~post6_5| 100) (= v_main_~yx~0_4 (* v_main_~Y~0_6 v_main_~x~0_7)) (= v_main_~xy~0_4 (* v_main_~X~0_5 v_main_~y~0_6))) InVars {main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_7, main_~Y~0=v_main_~Y~0_6, main_#t~post6=|v_main_#t~post6_5|, main_~X~0=v_main_~X~0_5} OutVars{main_~x~0=v_main_~x~0_7, main_~yx~0=v_main_~yx~0_4, main_~Y~0=v_main_~Y~0_6, main_~X~0=v_main_~X~0_5, main_~xy~0=v_main_~xy~0_4, main_~y~0=v_main_~y~0_6} AuxVars[] AssignedVars[main_~yx~0, main_~xy~0, main_#t~post6] {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-07 18:18:45,811 INFO L290 TraceCheckUtils]: 6: Hoare triple {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} [72] L31-3-->L31-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-07 18:18:45,812 INFO L290 TraceCheckUtils]: 5: Hoare triple {2776#true} [69] mainENTRY-->L31-3: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~X~0_2 |v_main_#t~nondet4_2|) (= v_main_~Y~0_3 |v_main_#t~nondet5_2|) (= (+ (* v_main_~Y~0_3 2) (* (- 1) v_main_~X~0_2)) v_main_~v~0_2) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (= v_main_~x~0_4 0) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_3 0)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~x~0=v_main_~x~0_4, main_~Y~0=v_main_~Y~0_3, main_~yx~0=v_main_~yx~0_3, main_~X~0=v_main_~X~0_2, main_~y~0=v_main_~y~0_3, main_~xy~0=v_main_~xy~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~x~0, main_~Y~0, main_~yx~0, main_~X~0, main_~y~0, main_~xy~0] {3038#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-07 18:18:45,812 INFO L272 TraceCheckUtils]: 4: Hoare triple {2776#true} [66] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,812 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2776#true} {2776#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,812 INFO L290 TraceCheckUtils]: 2: Hoare triple {2776#true} [70] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,812 INFO L290 TraceCheckUtils]: 1: Hoare triple {2776#true} [67] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= (select |v_#length_1| 2) 15) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2776#true} is VALID [2022-04-07 18:18:45,812 INFO L272 TraceCheckUtils]: 0: Hoare triple {2776#true} [65] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2776#true} is VALID [2022-04-07 18:18:45,812 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 18:18:45,812 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:18:45,812 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2126661345] [2022-04-07 18:18:45,812 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:18:45,812 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1173167548] [2022-04-07 18:18:45,812 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1173167548] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:18:45,812 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:18:45,813 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-07 18:18:45,813 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [596637371] [2022-04-07 18:18:45,813 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:18:45,813 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 18:18:45,813 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:18:45,814 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 18:18:45,859 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 18:18:45,859 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-07 18:18:45,859 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:18:45,860 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-07 18:18:45,860 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-04-07 18:18:45,860 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 18:18:46,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:18:46,184 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-07 18:18:46,184 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 18:18:46,184 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 18:18:46,184 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:18:46,184 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 18:18:46,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 56 transitions. [2022-04-07 18:18:46,187 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 18:18:46,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 56 transitions. [2022-04-07 18:18:46,189 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 56 transitions. [2022-04-07 18:18:46,229 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:18:46,231 INFO L225 Difference]: With dead ends: 102 [2022-04-07 18:18:46,231 INFO L226 Difference]: Without dead ends: 102 [2022-04-07 18:18:46,231 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 18:18:46,231 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 8 mSDsluCounter, 61 mSDsCounter, 0 mSdLazyCounter, 120 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 88 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 120 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 18:18:46,231 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 88 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 120 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 18:18:46,232 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-04-07 18:18:46,234 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 89. [2022-04-07 18:18:46,234 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:18:46,235 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 18:18:46,238 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 18:18:46,239 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 18:18:46,243 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:18:46,243 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-07 18:18:46,243 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 121 transitions. [2022-04-07 18:18:46,243 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:18:46,243 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:18:46,248 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 18:18:46,249 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 18:18:46,252 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:18:46,252 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-07 18:18:46,252 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 121 transitions. [2022-04-07 18:18:46,252 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:18:46,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:18:46,252 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:18:46,252 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:18:46,253 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 18:18:46,254 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 105 transitions. [2022-04-07 18:18:46,254 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 105 transitions. Word has length 49 [2022-04-07 18:18:46,254 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:18:46,254 INFO L478 AbstractCegarLoop]: Abstraction has 89 states and 105 transitions. [2022-04-07 18:18:46,254 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 18:18:46,254 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 105 transitions. [2022-04-07 18:18:46,255 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-07 18:18:46,255 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:18:46,257 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 18:18:46,273 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 18:18:46,473 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:18:46,473 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:18:46,474 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:18:46,474 INFO L85 PathProgramCache]: Analyzing trace with hash 1136439088, now seen corresponding path program 3 times [2022-04-07 18:18:46,474 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:18:46,474 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [130789051] [2022-04-07 18:18:46,474 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:18:46,474 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:18:46,483 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:18:46,483 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1516634141] [2022-04-07 18:18:46,483 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-07 18:18:46,483 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:18:46,484 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:18:46,484 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 18:18:46,485 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 18:18:47,067 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-07 18:18:47,067 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 18:18:47,069 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-07 18:18:47,104 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:18:47,105 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:19:03,325 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:19:13,348 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:19:19,366 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 18:19:25,489 WARN L833 $PredicateComparison]: unable to prove that (let ((.cse3 (+ c_main_~X~0 1)) (.cse2 (+ (* (- 1) c_main_~Y~0) (div (+ c_main_~v~0 c_main_~X~0) 2) (* c_main_~X~0 c_main_~y~0))) (.cse0 (= c_main_~Y~0 0)) (.cse4 (= (mod (+ (* 2 c_main_~X~0 c_main_~y~0) c_main_~v~0 c_main_~X~0) 2) 0))) (or (let ((.cse1 (div .cse2 c_main_~Y~0))) (and (not .cse0) (not (<= .cse1 c_main_~X~0)) (= (mod .cse2 c_main_~Y~0) 0) (= c_main_~xy~0 (* c_main_~y~0 .cse1)) (<= .cse1 .cse3) (= c_main_~yx~0 (* c_main_~Y~0 .cse1)) .cse4)) (and (let ((.cse6 (= c_main_~y~0 0))) (or (let ((.cse5 (div c_main_~xy~0 c_main_~y~0))) (and (<= .cse5 .cse3) (= (mod c_main_~xy~0 c_main_~y~0) 0) (not .cse6) (< c_main_~X~0 .cse5))) (and .cse6 (= c_main_~xy~0 0)))) (= 0 .cse2) .cse0 (= c_main_~yx~0 0) .cse4))) is different from false