/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 01:18:12,980 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 01:18:12,981 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 01:18:13,013 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 01:18:13,014 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 01:18:13,015 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 01:18:13,017 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 01:18:13,020 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 01:18:13,022 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 01:18:13,025 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 01:18:13,025 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 01:18:13,026 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 01:18:13,026 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 01:18:13,029 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 01:18:13,030 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 01:18:13,032 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 01:18:13,032 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 01:18:13,033 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 01:18:13,034 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 01:18:13,037 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 01:18:13,037 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 01:18:13,039 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 01:18:13,039 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 01:18:13,040 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 01:18:13,041 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 01:18:13,045 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 01:18:13,046 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 01:18:13,046 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 01:18:13,046 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 01:18:13,046 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 01:18:13,047 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 01:18:13,047 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 01:18:13,047 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 01:18:13,048 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 01:18:13,048 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 01:18:13,049 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 01:18:13,049 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 01:18:13,049 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 01:18:13,049 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 01:18:13,049 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 01:18:13,050 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 01:18:13,052 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 01:18:13,053 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-28 01:18:13,072 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 01:18:13,072 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 01:18:13,072 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-28 01:18:13,073 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-28 01:18:13,073 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-28 01:18:13,073 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-28 01:18:13,074 INFO L138 SettingsManager]: * Use SBE=true [2022-04-28 01:18:13,074 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 01:18:13,074 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 01:18:13,074 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 01:18:13,074 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 01:18:13,074 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 01:18:13,074 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 01:18:13,075 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 01:18:13,075 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 01:18:13,075 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 01:18:13,075 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 01:18:13,075 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 01:18:13,075 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 01:18:13,075 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 01:18:13,075 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 01:18:13,075 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-28 01:18:13,076 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-28 01:18:13,076 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-28 01:18:13,076 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-28 01:18:13,076 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 01:18:13,076 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-28 01:18:13,076 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-28 01:18:13,077 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-28 01:18:13,077 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-28 01:18:13,244 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 01:18:13,260 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 01:18:13,261 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 01:18:13,262 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 01:18:13,262 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 01:18:13,263 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound5.c [2022-04-28 01:18:13,311 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d714f2fd1/e7fbc8c6839f4903ac0007c4ed0c8ecd/FLAG7c1de5ead [2022-04-28 01:18:13,651 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 01:18:13,652 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound5.c [2022-04-28 01:18:13,658 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d714f2fd1/e7fbc8c6839f4903ac0007c4ed0c8ecd/FLAG7c1de5ead [2022-04-28 01:18:13,666 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d714f2fd1/e7fbc8c6839f4903ac0007c4ed0c8ecd [2022-04-28 01:18:13,667 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 01:18:13,668 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-28 01:18:13,669 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 01:18:13,669 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 01:18:13,671 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 01:18:13,671 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 01:18:13" (1/1) ... [2022-04-28 01:18:13,672 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@687f038c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:18:13, skipping insertion in model container [2022-04-28 01:18:13,672 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 01:18:13" (1/1) ... [2022-04-28 01:18:13,676 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 01:18:13,689 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 01:18:13,813 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/prodbin-ll_unwindbound5.c[537,550] [2022-04-28 01:18:13,833 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 01:18:13,838 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 01:18:13,845 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/prodbin-ll_unwindbound5.c[537,550] [2022-04-28 01:18:13,848 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 01:18:13,856 INFO L208 MainTranslator]: Completed translation [2022-04-28 01:18:13,856 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:18:13 WrapperNode [2022-04-28 01:18:13,856 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 01:18:13,857 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 01:18:13,857 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 01:18:13,857 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 01:18:13,863 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:18:13" (1/1) ... [2022-04-28 01:18:13,864 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:18:13" (1/1) ... [2022-04-28 01:18:13,867 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:18:13" (1/1) ... [2022-04-28 01:18:13,867 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:18:13" (1/1) ... [2022-04-28 01:18:13,871 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:18:13" (1/1) ... [2022-04-28 01:18:13,873 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:18:13" (1/1) ... [2022-04-28 01:18:13,879 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:18:13" (1/1) ... [2022-04-28 01:18:13,880 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 01:18:13,881 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 01:18:13,881 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 01:18:13,881 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 01:18:13,882 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:18:13" (1/1) ... [2022-04-28 01:18:13,891 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 01:18:13,901 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:18:13,909 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-28 01:18:13,928 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-28 01:18:13,936 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 01:18:13,936 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 01:18:13,936 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 01:18:13,937 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 01:18:13,937 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 01:18:13,937 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 01:18:13,937 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 01:18:13,937 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 01:18:13,937 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 01:18:13,937 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 01:18:13,937 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 01:18:13,937 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 01:18:13,937 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 01:18:13,937 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 01:18:13,937 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 01:18:13,937 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 01:18:13,937 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 01:18:13,938 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 01:18:13,938 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 01:18:13,938 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 01:18:13,983 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 01:18:13,985 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 01:18:14,101 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 01:18:14,116 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 01:18:14,116 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-28 01:18:14,118 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 01:18:14 BoogieIcfgContainer [2022-04-28 01:18:14,118 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 01:18:14,118 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-28 01:18:14,118 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-28 01:18:14,119 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-28 01:18:14,121 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 01:18:14" (1/1) ... [2022-04-28 01:18:14,122 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-28 01:18:14,141 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 28.04 01:18:14 BasicIcfg [2022-04-28 01:18:14,141 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-28 01:18:14,142 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 01:18:14,142 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 01:18:14,144 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 01:18:14,144 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 01:18:13" (1/4) ... [2022-04-28 01:18:14,144 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4e02985f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 01:18:14, skipping insertion in model container [2022-04-28 01:18:14,144 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 01:18:13" (2/4) ... [2022-04-28 01:18:14,144 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4e02985f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 01:18:14, skipping insertion in model container [2022-04-28 01:18:14,144 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 01:18:14" (3/4) ... [2022-04-28 01:18:14,145 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4e02985f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 01:18:14, skipping insertion in model container [2022-04-28 01:18:14,145 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 28.04 01:18:14" (4/4) ... [2022-04-28 01:18:14,145 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_unwindbound5.cqvasr [2022-04-28 01:18:14,154 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-28 01:18:14,155 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 01:18:14,183 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 01:18:14,188 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@5769b559, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@47834946 [2022-04-28 01:18:14,188 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 01:18:14,193 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 01:18:14,197 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-28 01:18:14,198 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:18:14,198 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:18:14,198 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:18:14,201 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:18:14,201 INFO L85 PathProgramCache]: Analyzing trace with hash 1957529129, now seen corresponding path program 1 times [2022-04-28 01:18:14,208 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:18:14,208 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1255823303] [2022-04-28 01:18:14,208 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:18:14,209 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:18:14,272 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:14,310 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 01:18:14,313 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:14,326 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {33#true} is VALID [2022-04-28 01:18:14,326 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-28 01:18:14,326 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {33#true} {33#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-28 01:18:14,327 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 01:18:14,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:14,333 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {33#true} is VALID [2022-04-28 01:18:14,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-28 01:18:14,333 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-28 01:18:14,333 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {33#true} is VALID [2022-04-28 01:18:14,334 INFO L272 TraceCheckUtils]: 0: Hoare triple {33#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 01:18:14,335 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {33#true} is VALID [2022-04-28 01:18:14,335 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-28 01:18:14,335 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-28 01:18:14,335 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-28 01:18:14,336 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {33#true} is VALID [2022-04-28 01:18:14,336 INFO L272 TraceCheckUtils]: 6: Hoare triple {33#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {33#true} is VALID [2022-04-28 01:18:14,336 INFO L290 TraceCheckUtils]: 7: Hoare triple {33#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {33#true} is VALID [2022-04-28 01:18:14,336 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-28 01:18:14,336 INFO L290 TraceCheckUtils]: 9: Hoare triple {33#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-28 01:18:14,337 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33#true} {33#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {33#true} is VALID [2022-04-28 01:18:14,337 INFO L290 TraceCheckUtils]: 11: Hoare triple {33#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {33#true} is VALID [2022-04-28 01:18:14,337 INFO L290 TraceCheckUtils]: 12: Hoare triple {33#true} [77] L33-3-->L33-4: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-28 01:18:14,338 INFO L272 TraceCheckUtils]: 13: Hoare triple {34#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {34#false} is VALID [2022-04-28 01:18:14,338 INFO L290 TraceCheckUtils]: 14: Hoare triple {34#false} [86] __VERIFIER_assertENTRY-->L13: 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] {34#false} is VALID [2022-04-28 01:18:14,338 INFO L290 TraceCheckUtils]: 15: Hoare triple {34#false} [89] L13-->L14: 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[] {34#false} is VALID [2022-04-28 01:18:14,338 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-28 01:18:14,338 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-28 01:18:14,339 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:18:14,339 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1255823303] [2022-04-28 01:18:14,339 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1255823303] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:18:14,340 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:18:14,340 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 01:18:14,341 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [855003199] [2022-04-28 01:18:14,341 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:18:14,344 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-28 01:18:14,345 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:18:14,347 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 01:18:14,377 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:18:14,377 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 01:18:14,378 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:18:14,393 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 01:18:14,393 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 01:18:14,395 INFO L87 Difference]: Start difference. First operand has 30 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 01:18:14,489 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:14,490 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-28 01:18:14,490 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 01:18:14,490 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-28 01:18:14,490 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:18:14,491 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 01:18:14,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-28 01:18:14,497 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 01:18:14,501 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-28 01:18:14,502 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 66 transitions. [2022-04-28 01:18:14,560 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:18:14,566 INFO L225 Difference]: With dead ends: 52 [2022-04-28 01:18:14,566 INFO L226 Difference]: Without dead ends: 26 [2022-04-28 01:18:14,568 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 5 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-28 01:18:14,570 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 35 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 01:18:14,571 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 35 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 01:18:14,581 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2022-04-28 01:18:14,590 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 25. [2022-04-28 01:18:14,590 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:18:14,591 INFO L82 GeneralOperation]: Start isEquivalent. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 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-28 01:18:14,592 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 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-28 01:18:14,592 INFO L87 Difference]: Start difference. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 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-28 01:18:14,595 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:14,595 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-28 01:18:14,595 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-28 01:18:14,595 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:18:14,596 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:18:14,596 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 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 26 states. [2022-04-28 01:18:14,596 INFO L87 Difference]: Start difference. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 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 26 states. [2022-04-28 01:18:14,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:14,598 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-28 01:18:14,599 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-28 01:18:14,599 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:18:14,599 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:18:14,599 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:18:14,599 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:18:14,600 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 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-28 01:18:14,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 28 transitions. [2022-04-28 01:18:14,602 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 28 transitions. Word has length 17 [2022-04-28 01:18:14,602 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:18:14,602 INFO L495 AbstractCegarLoop]: Abstraction has 25 states and 28 transitions. [2022-04-28 01:18:14,602 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 01:18:14,603 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-28 01:18:14,603 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-28 01:18:14,603 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:18:14,603 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:18:14,603 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 01:18:14,604 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:18:14,604 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:18:14,604 INFO L85 PathProgramCache]: Analyzing trace with hash 583261658, now seen corresponding path program 1 times [2022-04-28 01:18:14,604 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:18:14,605 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [73012125] [2022-04-28 01:18:14,605 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:18:14,605 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:18:14,620 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:18:14,621 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1863217852] [2022-04-28 01:18:14,621 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:18:14,621 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:18:14,621 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:18:14,622 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-28 01:18:14,624 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-28 01:18:14,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:14,664 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 01:18:14,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:14,674 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:18:14,788 INFO L272 TraceCheckUtils]: 0: Hoare triple {199#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199#true} is VALID [2022-04-28 01:18:14,791 INFO L290 TraceCheckUtils]: 1: Hoare triple {199#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {207#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:14,791 INFO L290 TraceCheckUtils]: 2: Hoare triple {207#(<= ~counter~0 0)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:14,792 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {207#(<= ~counter~0 0)} {199#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:14,792 INFO L272 TraceCheckUtils]: 4: Hoare triple {207#(<= ~counter~0 0)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:14,792 INFO L290 TraceCheckUtils]: 5: Hoare triple {207#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {207#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:14,793 INFO L272 TraceCheckUtils]: 6: Hoare triple {207#(<= ~counter~0 0)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {207#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:14,793 INFO L290 TraceCheckUtils]: 7: Hoare triple {207#(<= ~counter~0 0)} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {207#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:14,794 INFO L290 TraceCheckUtils]: 8: Hoare triple {207#(<= ~counter~0 0)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:14,794 INFO L290 TraceCheckUtils]: 9: Hoare triple {207#(<= ~counter~0 0)} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:14,795 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {207#(<= ~counter~0 0)} {207#(<= ~counter~0 0)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {207#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:14,795 INFO L290 TraceCheckUtils]: 11: Hoare triple {207#(<= ~counter~0 0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {207#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:14,796 INFO L290 TraceCheckUtils]: 12: Hoare triple {207#(<= ~counter~0 0)} [78] L33-3-->L33-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] {241#(<= |main_#t~post6| 0)} is VALID [2022-04-28 01:18:14,796 INFO L290 TraceCheckUtils]: 13: Hoare triple {241#(<= |main_#t~post6| 0)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {200#false} is VALID [2022-04-28 01:18:14,796 INFO L272 TraceCheckUtils]: 14: Hoare triple {200#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {200#false} is VALID [2022-04-28 01:18:14,797 INFO L290 TraceCheckUtils]: 15: Hoare triple {200#false} [86] __VERIFIER_assertENTRY-->L13: 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] {200#false} is VALID [2022-04-28 01:18:14,797 INFO L290 TraceCheckUtils]: 16: Hoare triple {200#false} [89] L13-->L14: 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[] {200#false} is VALID [2022-04-28 01:18:14,798 INFO L290 TraceCheckUtils]: 17: Hoare triple {200#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {200#false} is VALID [2022-04-28 01:18:14,798 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-28 01:18:14,798 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 01:18:14,798 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:18:14,799 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [73012125] [2022-04-28 01:18:14,799 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:18:14,802 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1863217852] [2022-04-28 01:18:14,802 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1863217852] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:18:14,802 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:18:14,802 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 01:18:14,803 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1406552886] [2022-04-28 01:18:14,804 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:18:14,805 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-28 01:18:14,806 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:18:14,807 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 01:18:14,824 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:18:14,824 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 01:18:14,824 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:18:14,825 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 01:18:14,825 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 01:18:14,825 INFO L87 Difference]: Start difference. First operand 25 states and 28 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 01:18:14,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:14,877 INFO L93 Difference]: Finished difference Result 34 states and 37 transitions. [2022-04-28 01:18:14,877 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 01:18:14,877 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-28 01:18:14,878 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:18:14,878 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 01:18:14,890 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-28 01:18:14,890 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 01:18:14,894 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-28 01:18:14,894 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 37 transitions. [2022-04-28 01:18:14,919 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:18:14,921 INFO L225 Difference]: With dead ends: 34 [2022-04-28 01:18:14,921 INFO L226 Difference]: Without dead ends: 27 [2022-04-28 01:18:14,921 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 01:18:14,923 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 0 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 01:18:14,924 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 66 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 01:18:14,925 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-28 01:18:14,942 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-28 01:18:14,942 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:18:14,943 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 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-28 01:18:14,943 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 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-28 01:18:14,944 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 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-28 01:18:14,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:14,947 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-28 01:18:14,947 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-28 01:18:14,948 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:18:14,948 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:18:14,948 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 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 27 states. [2022-04-28 01:18:14,950 INFO L87 Difference]: Start difference. First operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 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 27 states. [2022-04-28 01:18:14,953 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:14,953 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-28 01:18:14,953 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-28 01:18:14,953 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:18:14,953 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:18:14,954 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:18:14,954 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:18:14,954 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 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-28 01:18:14,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-04-28 01:18:14,959 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 18 [2022-04-28 01:18:14,959 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:18:14,959 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-04-28 01:18:14,959 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 01:18:14,959 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-28 01:18:14,961 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-28 01:18:14,961 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:18:14,961 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:18:14,987 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-28 01:18:15,167 WARN L477 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-28 01:18:15,168 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:18:15,168 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:18:15,168 INFO L85 PathProgramCache]: Analyzing trace with hash 584363925, now seen corresponding path program 1 times [2022-04-28 01:18:15,168 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:18:15,168 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1700485161] [2022-04-28 01:18:15,169 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:18:15,169 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:18:15,180 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:18:15,180 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [349441795] [2022-04-28 01:18:15,180 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:18:15,180 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:18:15,180 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:18:15,181 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-28 01:18:15,182 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-28 01:18:15,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:15,214 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 01:18:15,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:15,224 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:18:15,344 INFO L272 TraceCheckUtils]: 0: Hoare triple {395#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-28 01:18:15,344 INFO L290 TraceCheckUtils]: 1: Hoare triple {395#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {395#true} is VALID [2022-04-28 01:18:15,344 INFO L290 TraceCheckUtils]: 2: Hoare triple {395#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-28 01:18:15,345 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {395#true} {395#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-28 01:18:15,345 INFO L272 TraceCheckUtils]: 4: Hoare triple {395#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-28 01:18:15,345 INFO L290 TraceCheckUtils]: 5: Hoare triple {395#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {395#true} is VALID [2022-04-28 01:18:15,345 INFO L272 TraceCheckUtils]: 6: Hoare triple {395#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {395#true} is VALID [2022-04-28 01:18:15,348 INFO L290 TraceCheckUtils]: 7: Hoare triple {395#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {395#true} is VALID [2022-04-28 01:18:15,348 INFO L290 TraceCheckUtils]: 8: Hoare triple {395#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-28 01:18:15,348 INFO L290 TraceCheckUtils]: 9: Hoare triple {395#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-28 01:18:15,348 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {395#true} {395#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {395#true} is VALID [2022-04-28 01:18:15,351 INFO L290 TraceCheckUtils]: 11: Hoare triple {395#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:18:15,351 INFO L290 TraceCheckUtils]: 12: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-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] {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:18:15,352 INFO L290 TraceCheckUtils]: 13: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:18:15,355 INFO L272 TraceCheckUtils]: 14: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {443#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:18:15,356 INFO L290 TraceCheckUtils]: 15: Hoare triple {443#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: 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] {447#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:18:15,356 INFO L290 TraceCheckUtils]: 16: Hoare triple {447#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: 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[] {396#false} is VALID [2022-04-28 01:18:15,356 INFO L290 TraceCheckUtils]: 17: Hoare triple {396#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {396#false} is VALID [2022-04-28 01:18:15,356 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-28 01:18:15,356 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 01:18:15,357 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:18:15,357 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1700485161] [2022-04-28 01:18:15,357 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:18:15,357 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [349441795] [2022-04-28 01:18:15,357 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [349441795] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:18:15,357 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:18:15,357 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 01:18:15,357 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1075740517] [2022-04-28 01:18:15,357 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:18:15,358 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-28 01:18:15,358 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:18:15,358 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 01:18:15,370 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:18:15,370 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 01:18:15,371 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:18:15,371 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 01:18:15,371 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 01:18:15,371 INFO L87 Difference]: Start difference. First operand 27 states and 30 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 01:18:15,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:15,483 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-28 01:18:15,483 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 01:18:15,483 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-28 01:18:15,483 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:18:15,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 01:18:15,485 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-28 01:18:15,485 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 01:18:15,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-28 01:18:15,486 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 43 transitions. [2022-04-28 01:18:15,519 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:18:15,528 INFO L225 Difference]: With dead ends: 38 [2022-04-28 01:18:15,528 INFO L226 Difference]: Without dead ends: 36 [2022-04-28 01:18:15,528 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 01:18:15,530 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 8 mSDsluCounter, 56 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 78 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 01:18:15,531 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 78 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 01:18:15,532 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-28 01:18:15,543 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 32. [2022-04-28 01:18:15,544 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:18:15,544 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 01:18:15,544 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 01:18:15,545 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 01:18:15,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:15,548 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-28 01:18:15,548 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-28 01:18:15,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:18:15,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:18:15,549 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 36 states. [2022-04-28 01:18:15,549 INFO L87 Difference]: Start difference. First operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 36 states. [2022-04-28 01:18:15,551 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:15,551 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-28 01:18:15,551 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-28 01:18:15,555 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:18:15,555 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:18:15,555 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:18:15,555 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:18:15,555 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 01:18:15,558 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 35 transitions. [2022-04-28 01:18:15,558 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 35 transitions. Word has length 18 [2022-04-28 01:18:15,558 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:18:15,558 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 35 transitions. [2022-04-28 01:18:15,558 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 01:18:15,558 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2022-04-28 01:18:15,559 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-28 01:18:15,559 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:18:15,559 INFO L195 NwaCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:18:15,575 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-28 01:18:15,775 WARN L477 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-28 01:18:15,775 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:18:15,776 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:18:15,776 INFO L85 PathProgramCache]: Analyzing trace with hash 1698322804, now seen corresponding path program 1 times [2022-04-28 01:18:15,776 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:18:15,776 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1439669516] [2022-04-28 01:18:15,776 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:18:15,776 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:18:15,789 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:18:15,789 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [302733265] [2022-04-28 01:18:15,789 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:18:15,789 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:18:15,789 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:18:15,790 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-28 01:18:15,791 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-28 01:18:15,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:15,824 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 01:18:15,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:15,833 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:18:15,917 INFO L272 TraceCheckUtils]: 0: Hoare triple {624#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-28 01:18:15,917 INFO L290 TraceCheckUtils]: 1: Hoare triple {624#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {624#true} is VALID [2022-04-28 01:18:15,917 INFO L290 TraceCheckUtils]: 2: Hoare triple {624#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-28 01:18:15,917 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {624#true} {624#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-28 01:18:15,918 INFO L272 TraceCheckUtils]: 4: Hoare triple {624#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-28 01:18:15,918 INFO L290 TraceCheckUtils]: 5: Hoare triple {624#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {624#true} is VALID [2022-04-28 01:18:15,918 INFO L272 TraceCheckUtils]: 6: Hoare triple {624#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {624#true} is VALID [2022-04-28 01:18:15,918 INFO L290 TraceCheckUtils]: 7: Hoare triple {624#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {650#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 01:18:15,919 INFO L290 TraceCheckUtils]: 8: Hoare triple {650#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {654#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:18:15,919 INFO L290 TraceCheckUtils]: 9: Hoare triple {654#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:18:15,921 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {654#(not (= |assume_abort_if_not_#in~cond| 0))} {624#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {661#(<= 1 main_~b~0)} is VALID [2022-04-28 01:18:15,921 INFO L290 TraceCheckUtils]: 11: Hoare triple {661#(<= 1 main_~b~0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {665#(<= 1 main_~y~0)} is VALID [2022-04-28 01:18:15,926 INFO L290 TraceCheckUtils]: 12: Hoare triple {665#(<= 1 main_~y~0)} [78] L33-3-->L33-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] {665#(<= 1 main_~y~0)} is VALID [2022-04-28 01:18:15,926 INFO L290 TraceCheckUtils]: 13: Hoare triple {665#(<= 1 main_~y~0)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {665#(<= 1 main_~y~0)} is VALID [2022-04-28 01:18:15,926 INFO L272 TraceCheckUtils]: 14: Hoare triple {665#(<= 1 main_~y~0)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {624#true} is VALID [2022-04-28 01:18:15,926 INFO L290 TraceCheckUtils]: 15: Hoare triple {624#true} [86] __VERIFIER_assertENTRY-->L13: 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] {624#true} is VALID [2022-04-28 01:18:15,926 INFO L290 TraceCheckUtils]: 16: Hoare triple {624#true} [90] L13-->L13-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[] {624#true} is VALID [2022-04-28 01:18:15,927 INFO L290 TraceCheckUtils]: 17: Hoare triple {624#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-28 01:18:15,927 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {624#true} {665#(<= 1 main_~y~0)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {665#(<= 1 main_~y~0)} is VALID [2022-04-28 01:18:15,928 INFO L290 TraceCheckUtils]: 19: Hoare triple {665#(<= 1 main_~y~0)} [91] L34-1-->L33-4: Formula: (= v_main_~y~0_7 0) InVars {main_~y~0=v_main_~y~0_7} OutVars{main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[] {625#false} is VALID [2022-04-28 01:18:15,928 INFO L272 TraceCheckUtils]: 20: Hoare triple {625#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {625#false} is VALID [2022-04-28 01:18:15,928 INFO L290 TraceCheckUtils]: 21: Hoare triple {625#false} [86] __VERIFIER_assertENTRY-->L13: 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] {625#false} is VALID [2022-04-28 01:18:15,928 INFO L290 TraceCheckUtils]: 22: Hoare triple {625#false} [89] L13-->L14: 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[] {625#false} is VALID [2022-04-28 01:18:15,928 INFO L290 TraceCheckUtils]: 23: Hoare triple {625#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {625#false} is VALID [2022-04-28 01:18:15,928 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 01:18:15,929 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 01:18:15,929 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:18:15,929 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1439669516] [2022-04-28 01:18:15,929 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:18:15,929 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [302733265] [2022-04-28 01:18:15,929 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [302733265] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 01:18:15,929 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 01:18:15,929 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 01:18:15,929 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1560856205] [2022-04-28 01:18:15,929 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 01:18:15,930 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-28 01:18:15,930 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:18:15,930 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 01:18:15,942 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:18:15,943 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 01:18:15,943 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:18:15,943 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 01:18:15,943 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 01:18:15,943 INFO L87 Difference]: Start difference. First operand 32 states and 35 transitions. Second operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 01:18:16,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:16,051 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2022-04-28 01:18:16,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 01:18:16,051 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-28 01:18:16,051 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:18:16,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 01:18:16,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-28 01:18:16,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 01:18:16,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-28 01:18:16,053 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 43 transitions. [2022-04-28 01:18:16,102 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:18:16,104 INFO L225 Difference]: With dead ends: 42 [2022-04-28 01:18:16,105 INFO L226 Difference]: Without dead ends: 35 [2022-04-28 01:18:16,105 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 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-28 01:18:16,107 INFO L413 NwaCegarLoop]: 23 mSDtfsCounter, 17 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 88 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 01:18:16,108 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 88 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 01:18:16,109 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-28 01:18:16,120 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 33. [2022-04-28 01:18:16,120 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:18:16,121 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 01:18:16,121 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 01:18:16,121 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 01:18:16,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:16,122 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-28 01:18:16,122 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-28 01:18:16,123 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:18:16,123 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:18:16,123 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-28 01:18:16,123 INFO L87 Difference]: Start difference. First operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-28 01:18:16,124 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:16,124 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-28 01:18:16,125 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-28 01:18:16,125 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:18:16,125 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:18:16,125 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:18:16,125 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:18:16,125 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 01:18:16,126 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 36 transitions. [2022-04-28 01:18:16,126 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 36 transitions. Word has length 24 [2022-04-28 01:18:16,127 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:18:16,127 INFO L495 AbstractCegarLoop]: Abstraction has 33 states and 36 transitions. [2022-04-28 01:18:16,127 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 01:18:16,127 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 36 transitions. [2022-04-28 01:18:16,127 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 01:18:16,127 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:18:16,127 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:18:16,145 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 01:18:16,339 WARN L477 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-28 01:18:16,339 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:18:16,340 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:18:16,340 INFO L85 PathProgramCache]: Analyzing trace with hash 919545147, now seen corresponding path program 1 times [2022-04-28 01:18:16,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:18:16,340 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [702416968] [2022-04-28 01:18:16,340 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:18:16,340 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:18:16,353 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:18:16,354 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [848395380] [2022-04-28 01:18:16,354 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:18:16,354 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:18:16,354 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:18:16,355 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-28 01:18:16,356 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-28 01:18:16,387 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:16,388 INFO L263 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 01:18:16,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:16,395 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:18:16,533 INFO L272 TraceCheckUtils]: 0: Hoare triple {878#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-28 01:18:16,534 INFO L290 TraceCheckUtils]: 1: Hoare triple {878#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {886#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:16,534 INFO L290 TraceCheckUtils]: 2: Hoare triple {886#(<= ~counter~0 0)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:16,535 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {886#(<= ~counter~0 0)} {878#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:16,535 INFO L272 TraceCheckUtils]: 4: Hoare triple {886#(<= ~counter~0 0)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:16,535 INFO L290 TraceCheckUtils]: 5: Hoare triple {886#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {886#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:16,536 INFO L272 TraceCheckUtils]: 6: Hoare triple {886#(<= ~counter~0 0)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {886#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:16,536 INFO L290 TraceCheckUtils]: 7: Hoare triple {886#(<= ~counter~0 0)} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {886#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:16,537 INFO L290 TraceCheckUtils]: 8: Hoare triple {886#(<= ~counter~0 0)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:16,537 INFO L290 TraceCheckUtils]: 9: Hoare triple {886#(<= ~counter~0 0)} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:16,537 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {886#(<= ~counter~0 0)} {886#(<= ~counter~0 0)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {886#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:16,538 INFO L290 TraceCheckUtils]: 11: Hoare triple {886#(<= ~counter~0 0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {886#(<= ~counter~0 0)} is VALID [2022-04-28 01:18:16,538 INFO L290 TraceCheckUtils]: 12: Hoare triple {886#(<= ~counter~0 0)} [78] L33-3-->L33-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] {920#(<= ~counter~0 1)} is VALID [2022-04-28 01:18:16,539 INFO L290 TraceCheckUtils]: 13: Hoare triple {920#(<= ~counter~0 1)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {920#(<= ~counter~0 1)} is VALID [2022-04-28 01:18:16,539 INFO L272 TraceCheckUtils]: 14: Hoare triple {920#(<= ~counter~0 1)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {920#(<= ~counter~0 1)} is VALID [2022-04-28 01:18:16,540 INFO L290 TraceCheckUtils]: 15: Hoare triple {920#(<= ~counter~0 1)} [86] __VERIFIER_assertENTRY-->L13: 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] {920#(<= ~counter~0 1)} is VALID [2022-04-28 01:18:16,540 INFO L290 TraceCheckUtils]: 16: Hoare triple {920#(<= ~counter~0 1)} [90] L13-->L13-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[] {920#(<= ~counter~0 1)} is VALID [2022-04-28 01:18:16,540 INFO L290 TraceCheckUtils]: 17: Hoare triple {920#(<= ~counter~0 1)} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#(<= ~counter~0 1)} is VALID [2022-04-28 01:18:16,543 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {920#(<= ~counter~0 1)} {920#(<= ~counter~0 1)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {920#(<= ~counter~0 1)} is VALID [2022-04-28 01:18:16,544 INFO L290 TraceCheckUtils]: 19: Hoare triple {920#(<= ~counter~0 1)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {920#(<= ~counter~0 1)} is VALID [2022-04-28 01:18:16,544 INFO L290 TraceCheckUtils]: 20: Hoare triple {920#(<= ~counter~0 1)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {920#(<= ~counter~0 1)} is VALID [2022-04-28 01:18:16,544 INFO L290 TraceCheckUtils]: 21: Hoare triple {920#(<= ~counter~0 1)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {920#(<= ~counter~0 1)} is VALID [2022-04-28 01:18:16,545 INFO L290 TraceCheckUtils]: 22: Hoare triple {920#(<= ~counter~0 1)} [78] L33-3-->L33-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] {951#(<= |main_#t~post6| 1)} is VALID [2022-04-28 01:18:16,546 INFO L290 TraceCheckUtils]: 23: Hoare triple {951#(<= |main_#t~post6| 1)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {879#false} is VALID [2022-04-28 01:18:16,546 INFO L272 TraceCheckUtils]: 24: Hoare triple {879#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {879#false} is VALID [2022-04-28 01:18:16,546 INFO L290 TraceCheckUtils]: 25: Hoare triple {879#false} [86] __VERIFIER_assertENTRY-->L13: 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] {879#false} is VALID [2022-04-28 01:18:16,546 INFO L290 TraceCheckUtils]: 26: Hoare triple {879#false} [89] L13-->L14: 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[] {879#false} is VALID [2022-04-28 01:18:16,548 INFO L290 TraceCheckUtils]: 27: Hoare triple {879#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#false} is VALID [2022-04-28 01:18:16,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-28 01:18:16,548 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:18:16,675 INFO L290 TraceCheckUtils]: 27: Hoare triple {879#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#false} is VALID [2022-04-28 01:18:16,675 INFO L290 TraceCheckUtils]: 26: Hoare triple {879#false} [89] L13-->L14: 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[] {879#false} is VALID [2022-04-28 01:18:16,675 INFO L290 TraceCheckUtils]: 25: Hoare triple {879#false} [86] __VERIFIER_assertENTRY-->L13: 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] {879#false} is VALID [2022-04-28 01:18:16,676 INFO L272 TraceCheckUtils]: 24: Hoare triple {879#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {879#false} is VALID [2022-04-28 01:18:16,676 INFO L290 TraceCheckUtils]: 23: Hoare triple {979#(< |main_#t~post6| 5)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {879#false} is VALID [2022-04-28 01:18:16,677 INFO L290 TraceCheckUtils]: 22: Hoare triple {983#(< ~counter~0 5)} [78] L33-3-->L33-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] {979#(< |main_#t~post6| 5)} is VALID [2022-04-28 01:18:16,679 INFO L290 TraceCheckUtils]: 21: Hoare triple {983#(< ~counter~0 5)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {983#(< ~counter~0 5)} is VALID [2022-04-28 01:18:16,679 INFO L290 TraceCheckUtils]: 20: Hoare triple {983#(< ~counter~0 5)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {983#(< ~counter~0 5)} is VALID [2022-04-28 01:18:16,687 INFO L290 TraceCheckUtils]: 19: Hoare triple {983#(< ~counter~0 5)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {983#(< ~counter~0 5)} is VALID [2022-04-28 01:18:16,688 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {878#true} {983#(< ~counter~0 5)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {983#(< ~counter~0 5)} is VALID [2022-04-28 01:18:16,688 INFO L290 TraceCheckUtils]: 17: Hoare triple {878#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-28 01:18:16,688 INFO L290 TraceCheckUtils]: 16: Hoare triple {878#true} [90] L13-->L13-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[] {878#true} is VALID [2022-04-28 01:18:16,688 INFO L290 TraceCheckUtils]: 15: Hoare triple {878#true} [86] __VERIFIER_assertENTRY-->L13: 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] {878#true} is VALID [2022-04-28 01:18:16,688 INFO L272 TraceCheckUtils]: 14: Hoare triple {983#(< ~counter~0 5)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {878#true} is VALID [2022-04-28 01:18:16,689 INFO L290 TraceCheckUtils]: 13: Hoare triple {983#(< ~counter~0 5)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {983#(< ~counter~0 5)} is VALID [2022-04-28 01:18:16,689 INFO L290 TraceCheckUtils]: 12: Hoare triple {1014#(< ~counter~0 4)} [78] L33-3-->L33-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] {983#(< ~counter~0 5)} is VALID [2022-04-28 01:18:16,690 INFO L290 TraceCheckUtils]: 11: Hoare triple {1014#(< ~counter~0 4)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1014#(< ~counter~0 4)} is VALID [2022-04-28 01:18:16,690 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {878#true} {1014#(< ~counter~0 4)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1014#(< ~counter~0 4)} is VALID [2022-04-28 01:18:16,690 INFO L290 TraceCheckUtils]: 9: Hoare triple {878#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-28 01:18:16,690 INFO L290 TraceCheckUtils]: 8: Hoare triple {878#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-28 01:18:16,690 INFO L290 TraceCheckUtils]: 7: Hoare triple {878#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {878#true} is VALID [2022-04-28 01:18:16,690 INFO L272 TraceCheckUtils]: 6: Hoare triple {1014#(< ~counter~0 4)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {878#true} is VALID [2022-04-28 01:18:16,691 INFO L290 TraceCheckUtils]: 5: Hoare triple {1014#(< ~counter~0 4)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1014#(< ~counter~0 4)} is VALID [2022-04-28 01:18:16,691 INFO L272 TraceCheckUtils]: 4: Hoare triple {1014#(< ~counter~0 4)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1014#(< ~counter~0 4)} is VALID [2022-04-28 01:18:16,691 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1014#(< ~counter~0 4)} {878#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1014#(< ~counter~0 4)} is VALID [2022-04-28 01:18:16,692 INFO L290 TraceCheckUtils]: 2: Hoare triple {1014#(< ~counter~0 4)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1014#(< ~counter~0 4)} is VALID [2022-04-28 01:18:16,692 INFO L290 TraceCheckUtils]: 1: Hoare triple {878#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {1014#(< ~counter~0 4)} is VALID [2022-04-28 01:18:16,692 INFO L272 TraceCheckUtils]: 0: Hoare triple {878#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-28 01:18:16,693 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-28 01:18:16,693 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:18:16,693 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [702416968] [2022-04-28 01:18:16,693 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:18:16,693 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [848395380] [2022-04-28 01:18:16,693 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [848395380] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:18:16,693 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:18:16,693 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-28 01:18:16,693 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [417326735] [2022-04-28 01:18:16,694 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:18:16,694 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 28 [2022-04-28 01:18:16,694 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:18:16,694 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-28 01:18:16,729 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:18:16,729 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 01:18:16,729 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:18:16,729 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 01:18:16,729 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-28 01:18:16,730 INFO L87 Difference]: Start difference. First operand 33 states and 36 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-28 01:18:16,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:16,911 INFO L93 Difference]: Finished difference Result 70 states and 80 transitions. [2022-04-28 01:18:16,911 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 01:18:16,911 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 28 [2022-04-28 01:18:16,913 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:18:16,913 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-28 01:18:16,914 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 80 transitions. [2022-04-28 01:18:16,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-28 01:18:16,916 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 80 transitions. [2022-04-28 01:18:16,916 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 80 transitions. [2022-04-28 01:18:16,962 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:18:16,964 INFO L225 Difference]: With dead ends: 70 [2022-04-28 01:18:16,964 INFO L226 Difference]: Without dead ends: 63 [2022-04-28 01:18:16,964 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 49 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-28 01:18:16,965 INFO L413 NwaCegarLoop]: 29 mSDtfsCounter, 42 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 01:18:16,965 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [42 Valid, 102 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 01:18:16,965 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-04-28 01:18:16,982 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 59. [2022-04-28 01:18:16,983 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:18:16,983 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 01:18:16,983 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 01:18:16,983 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 01:18:16,985 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:16,985 INFO L93 Difference]: Finished difference Result 63 states and 71 transitions. [2022-04-28 01:18:16,985 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 71 transitions. [2022-04-28 01:18:16,985 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:18:16,985 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:18:16,986 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 63 states. [2022-04-28 01:18:16,986 INFO L87 Difference]: Start difference. First operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 63 states. [2022-04-28 01:18:16,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:18:16,987 INFO L93 Difference]: Finished difference Result 63 states and 71 transitions. [2022-04-28 01:18:16,988 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 71 transitions. [2022-04-28 01:18:16,988 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:18:16,988 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:18:16,988 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:18:16,988 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:18:16,988 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 01:18:16,990 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 69 transitions. [2022-04-28 01:18:16,990 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 69 transitions. Word has length 28 [2022-04-28 01:18:16,990 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:18:16,991 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 69 transitions. [2022-04-28 01:18:16,991 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-28 01:18:16,991 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-28 01:18:16,991 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 01:18:16,991 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:18:16,992 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:18:17,008 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-28 01:18:17,201 WARN L477 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-28 01:18:17,202 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:18:17,202 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:18:17,202 INFO L85 PathProgramCache]: Analyzing trace with hash 920647414, now seen corresponding path program 1 times [2022-04-28 01:18:17,202 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:18:17,202 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [80688239] [2022-04-28 01:18:17,202 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:18:17,202 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:18:17,219 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:18:17,219 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1163809149] [2022-04-28 01:18:17,219 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:18:17,219 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:18:17,219 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:18:17,221 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-28 01:18:17,222 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-28 01:18:17,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:17,263 INFO L263 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-28 01:18:17,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:18:17,280 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:18:21,353 INFO L272 TraceCheckUtils]: 0: Hoare triple {1360#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:18:21,354 INFO L290 TraceCheckUtils]: 1: Hoare triple {1360#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {1360#true} is VALID [2022-04-28 01:18:21,354 INFO L290 TraceCheckUtils]: 2: Hoare triple {1360#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:18:21,354 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1360#true} {1360#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:18:21,354 INFO L272 TraceCheckUtils]: 4: Hoare triple {1360#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:18:21,354 INFO L290 TraceCheckUtils]: 5: Hoare triple {1360#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1360#true} is VALID [2022-04-28 01:18:21,354 INFO L272 TraceCheckUtils]: 6: Hoare triple {1360#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1360#true} is VALID [2022-04-28 01:18:21,354 INFO L290 TraceCheckUtils]: 7: Hoare triple {1360#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1360#true} is VALID [2022-04-28 01:18:21,354 INFO L290 TraceCheckUtils]: 8: Hoare triple {1360#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:18:21,354 INFO L290 TraceCheckUtils]: 9: Hoare triple {1360#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:18:21,354 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1360#true} {1360#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1360#true} is VALID [2022-04-28 01:18:21,355 INFO L290 TraceCheckUtils]: 11: Hoare triple {1360#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:18:21,355 INFO L290 TraceCheckUtils]: 12: Hoare triple {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-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] {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:18:21,356 INFO L290 TraceCheckUtils]: 13: Hoare triple {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:18:21,356 INFO L272 TraceCheckUtils]: 14: Hoare triple {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1360#true} is VALID [2022-04-28 01:18:21,356 INFO L290 TraceCheckUtils]: 15: Hoare triple {1360#true} [86] __VERIFIER_assertENTRY-->L13: 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] {1411#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:18:21,356 INFO L290 TraceCheckUtils]: 16: Hoare triple {1411#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [90] L13-->L13-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[] {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:18:21,357 INFO L290 TraceCheckUtils]: 17: Hoare triple {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:18:21,357 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1422#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:18:21,358 INFO L290 TraceCheckUtils]: 19: Hoare triple {1422#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {1426#(and (not (= main_~y~0 0)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:18:21,358 INFO L290 TraceCheckUtils]: 20: Hoare triple {1426#(and (not (= main_~y~0 0)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {1430#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~b~0 main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:18:21,360 INFO L290 TraceCheckUtils]: 21: Hoare triple {1430#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~b~0 main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:18:21,360 INFO L290 TraceCheckUtils]: 22: Hoare triple {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [78] L33-3-->L33-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] {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:18:21,360 INFO L290 TraceCheckUtils]: 23: Hoare triple {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:18:23,363 WARN L272 TraceCheckUtils]: 24: Hoare triple {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1444#(<= 1 |__VERIFIER_assert_#in~cond|)} is UNKNOWN [2022-04-28 01:18:23,364 INFO L290 TraceCheckUtils]: 25: Hoare triple {1444#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: 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] {1448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:18:23,364 INFO L290 TraceCheckUtils]: 26: Hoare triple {1448#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: 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[] {1361#false} is VALID [2022-04-28 01:18:23,364 INFO L290 TraceCheckUtils]: 27: Hoare triple {1361#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1361#false} is VALID [2022-04-28 01:18:23,364 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 01:18:23,364 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:19:19,134 INFO L290 TraceCheckUtils]: 27: Hoare triple {1361#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1361#false} is VALID [2022-04-28 01:19:19,135 INFO L290 TraceCheckUtils]: 26: Hoare triple {1448#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: 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[] {1361#false} is VALID [2022-04-28 01:19:19,135 INFO L290 TraceCheckUtils]: 25: Hoare triple {1444#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: 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] {1448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:19:19,136 INFO L272 TraceCheckUtils]: 24: Hoare triple {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:19:19,137 INFO L290 TraceCheckUtils]: 23: Hoare triple {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:19:19,137 INFO L290 TraceCheckUtils]: 22: Hoare triple {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L33-3-->L33-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] {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:19:19,141 INFO L290 TraceCheckUtils]: 21: Hoare triple {1474#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:19:19,143 INFO L290 TraceCheckUtils]: 20: Hoare triple {1478#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {1474#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-28 01:19:19,144 INFO L290 TraceCheckUtils]: 19: Hoare triple {1478#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {1478#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 01:19:19,479 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} {1360#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1478#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-28 01:19:19,479 INFO L290 TraceCheckUtils]: 17: Hoare triple {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:19:19,480 INFO L290 TraceCheckUtils]: 16: Hoare triple {1494#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [90] L13-->L13-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[] {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:19:19,480 INFO L290 TraceCheckUtils]: 15: Hoare triple {1360#true} [86] __VERIFIER_assertENTRY-->L13: 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] {1494#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 01:19:19,480 INFO L272 TraceCheckUtils]: 14: Hoare triple {1360#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1360#true} is VALID [2022-04-28 01:19:19,480 INFO L290 TraceCheckUtils]: 13: Hoare triple {1360#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1360#true} is VALID [2022-04-28 01:19:19,481 INFO L290 TraceCheckUtils]: 12: Hoare triple {1360#true} [78] L33-3-->L33-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] {1360#true} is VALID [2022-04-28 01:19:19,481 INFO L290 TraceCheckUtils]: 11: Hoare triple {1360#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1360#true} is VALID [2022-04-28 01:19:19,481 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1360#true} {1360#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1360#true} is VALID [2022-04-28 01:19:19,481 INFO L290 TraceCheckUtils]: 9: Hoare triple {1360#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:19:19,481 INFO L290 TraceCheckUtils]: 8: Hoare triple {1360#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:19:19,481 INFO L290 TraceCheckUtils]: 7: Hoare triple {1360#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1360#true} is VALID [2022-04-28 01:19:19,481 INFO L272 TraceCheckUtils]: 6: Hoare triple {1360#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1360#true} is VALID [2022-04-28 01:19:19,481 INFO L290 TraceCheckUtils]: 5: Hoare triple {1360#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1360#true} is VALID [2022-04-28 01:19:19,481 INFO L272 TraceCheckUtils]: 4: Hoare triple {1360#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:19:19,481 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1360#true} {1360#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:19:19,481 INFO L290 TraceCheckUtils]: 2: Hoare triple {1360#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:19:19,482 INFO L290 TraceCheckUtils]: 1: Hoare triple {1360#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {1360#true} is VALID [2022-04-28 01:19:19,482 INFO L272 TraceCheckUtils]: 0: Hoare triple {1360#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-28 01:19:19,482 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 01:19:19,482 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:19:19,482 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [80688239] [2022-04-28 01:19:19,482 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:19:19,482 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1163809149] [2022-04-28 01:19:19,482 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1163809149] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:19:19,482 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:19:19,482 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9] total 15 [2022-04-28 01:19:19,482 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [168373425] [2022-04-28 01:19:19,482 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:19:19,483 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-28 01:19:19,483 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:19:19,483 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 01:19:20,098 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:19:20,098 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 01:19:20,098 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:19:20,099 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 01:19:20,099 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=166, Unknown=0, NotChecked=0, Total=210 [2022-04-28 01:19:20,099 INFO L87 Difference]: Start difference. First operand 59 states and 69 transitions. Second operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 01:19:30,569 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.99s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:19:40,615 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:40,615 INFO L93 Difference]: Finished difference Result 94 states and 109 transitions. [2022-04-28 01:19:40,615 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 01:19:40,616 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-28 01:19:40,616 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:19:40,616 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 01:19:40,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-28 01:19:40,617 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 01:19:40,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-28 01:19:40,619 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 60 transitions. [2022-04-28 01:19:43,597 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 59 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 01:19:43,598 INFO L225 Difference]: With dead ends: 94 [2022-04-28 01:19:43,599 INFO L226 Difference]: Without dead ends: 92 [2022-04-28 01:19:43,599 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 59 GetRequests, 40 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 11.0s TimeCoverageRelationStatistics Valid=70, Invalid=272, Unknown=0, NotChecked=0, Total=342 [2022-04-28 01:19:43,599 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 30 mSDsluCounter, 152 mSDsCounter, 0 mSdLazyCounter, 192 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 7.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 213 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 192 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 7.3s IncrementalHoareTripleChecker+Time [2022-04-28 01:19:43,599 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [32 Valid, 174 Invalid, 213 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 192 Invalid, 0 Unknown, 0 Unchecked, 7.3s Time] [2022-04-28 01:19:43,600 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 92 states. [2022-04-28 01:19:43,627 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 92 to 88. [2022-04-28 01:19:43,627 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:19:43,628 INFO L82 GeneralOperation]: Start isEquivalent. First operand 92 states. Second operand has 88 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 70 states have internal predecessors, (79), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:19:43,628 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand has 88 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 70 states have internal predecessors, (79), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:19:43,628 INFO L87 Difference]: Start difference. First operand 92 states. Second operand has 88 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 70 states have internal predecessors, (79), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:19:43,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:43,630 INFO L93 Difference]: Finished difference Result 92 states and 105 transitions. [2022-04-28 01:19:43,630 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 105 transitions. [2022-04-28 01:19:43,630 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:19:43,630 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:19:43,630 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 70 states have internal predecessors, (79), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 92 states. [2022-04-28 01:19:43,631 INFO L87 Difference]: Start difference. First operand has 88 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 70 states have internal predecessors, (79), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 92 states. [2022-04-28 01:19:43,632 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:19:43,633 INFO L93 Difference]: Finished difference Result 92 states and 105 transitions. [2022-04-28 01:19:43,633 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 105 transitions. [2022-04-28 01:19:43,633 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:19:43,633 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:19:43,633 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:19:43,633 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:19:43,633 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 70 states have internal predecessors, (79), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:19:43,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 101 transitions. [2022-04-28 01:19:43,635 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 101 transitions. Word has length 28 [2022-04-28 01:19:43,635 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:19:43,635 INFO L495 AbstractCegarLoop]: Abstraction has 88 states and 101 transitions. [2022-04-28 01:19:43,635 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 01:19:43,635 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 101 transitions. [2022-04-28 01:19:43,636 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 01:19:43,636 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:19:43,636 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:19:43,657 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-28 01:19:43,851 WARN L477 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-28 01:19:43,852 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:19:43,852 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:19:43,852 INFO L85 PathProgramCache]: Analyzing trace with hash -1631509547, now seen corresponding path program 1 times [2022-04-28 01:19:43,852 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:19:43,852 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [960965621] [2022-04-28 01:19:43,852 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:19:43,852 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:19:43,863 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:19:43,863 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1496468716] [2022-04-28 01:19:43,863 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:19:43,863 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:19:43,863 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:19:43,871 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-28 01:19:43,880 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-28 01:19:43,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:43,902 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-28 01:19:43,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:19:43,911 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:19:45,501 INFO L272 TraceCheckUtils]: 0: Hoare triple {1983#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1983#true} is VALID [2022-04-28 01:19:45,502 INFO L290 TraceCheckUtils]: 1: Hoare triple {1983#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {1983#true} is VALID [2022-04-28 01:19:45,502 INFO L290 TraceCheckUtils]: 2: Hoare triple {1983#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1983#true} is VALID [2022-04-28 01:19:45,502 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1983#true} {1983#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1983#true} is VALID [2022-04-28 01:19:45,502 INFO L272 TraceCheckUtils]: 4: Hoare triple {1983#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1983#true} is VALID [2022-04-28 01:19:45,502 INFO L290 TraceCheckUtils]: 5: Hoare triple {1983#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1983#true} is VALID [2022-04-28 01:19:45,502 INFO L272 TraceCheckUtils]: 6: Hoare triple {1983#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1983#true} is VALID [2022-04-28 01:19:45,505 INFO L290 TraceCheckUtils]: 7: Hoare triple {1983#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2009#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 01:19:45,506 INFO L290 TraceCheckUtils]: 8: Hoare triple {2009#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2013#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:19:45,506 INFO L290 TraceCheckUtils]: 9: Hoare triple {2013#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2013#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:19:45,506 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2013#(not (= |assume_abort_if_not_#in~cond| 0))} {1983#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2020#(<= 1 main_~b~0)} is VALID [2022-04-28 01:19:45,507 INFO L290 TraceCheckUtils]: 11: Hoare triple {2020#(<= 1 main_~b~0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2024#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:19:45,507 INFO L290 TraceCheckUtils]: 12: Hoare triple {2024#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-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] {2024#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:19:45,507 INFO L290 TraceCheckUtils]: 13: Hoare triple {2024#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2024#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:19:45,507 INFO L272 TraceCheckUtils]: 14: Hoare triple {2024#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1983#true} is VALID [2022-04-28 01:19:45,508 INFO L290 TraceCheckUtils]: 15: Hoare triple {1983#true} [86] __VERIFIER_assertENTRY-->L13: 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] {2037#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:19:45,508 INFO L290 TraceCheckUtils]: 16: Hoare triple {2037#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [90] L13-->L13-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[] {2041#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:19:45,508 INFO L290 TraceCheckUtils]: 17: Hoare triple {2041#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2041#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:19:45,509 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2041#(not (= |__VERIFIER_assert_#in~cond| 0))} {2024#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2048#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:19:45,509 INFO L290 TraceCheckUtils]: 19: Hoare triple {2048#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {2048#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:19:45,510 INFO L290 TraceCheckUtils]: 20: Hoare triple {2048#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {2055#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:19:45,510 INFO L290 TraceCheckUtils]: 21: Hoare triple {2055#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2059#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} is VALID [2022-04-28 01:19:45,511 INFO L290 TraceCheckUtils]: 22: Hoare triple {2059#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} [78] L33-3-->L33-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] {2059#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} is VALID [2022-04-28 01:19:45,511 INFO L290 TraceCheckUtils]: 23: Hoare triple {2059#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2059#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} is VALID [2022-04-28 01:19:45,513 INFO L272 TraceCheckUtils]: 24: Hoare triple {2059#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2069#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:19:45,513 INFO L290 TraceCheckUtils]: 25: Hoare triple {2069#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: 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] {2073#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:19:45,513 INFO L290 TraceCheckUtils]: 26: Hoare triple {2073#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: 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[] {1984#false} is VALID [2022-04-28 01:19:45,513 INFO L290 TraceCheckUtils]: 27: Hoare triple {1984#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1984#false} is VALID [2022-04-28 01:19:45,514 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 01:19:45,514 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:20:07,489 INFO L290 TraceCheckUtils]: 27: Hoare triple {1984#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1984#false} is VALID [2022-04-28 01:20:07,489 INFO L290 TraceCheckUtils]: 26: Hoare triple {2073#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: 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[] {1984#false} is VALID [2022-04-28 01:20:07,490 INFO L290 TraceCheckUtils]: 25: Hoare triple {2069#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: 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] {2073#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:20:07,490 INFO L272 TraceCheckUtils]: 24: Hoare triple {2089#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2069#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:20:07,491 INFO L290 TraceCheckUtils]: 23: Hoare triple {2089#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2089#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:20:07,491 INFO L290 TraceCheckUtils]: 22: Hoare triple {2089#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L33-3-->L33-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] {2089#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:20:07,496 INFO L290 TraceCheckUtils]: 21: Hoare triple {2099#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2089#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:20:07,497 INFO L290 TraceCheckUtils]: 20: Hoare triple {2103#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {2099#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-28 01:20:07,497 INFO L290 TraceCheckUtils]: 19: Hoare triple {2103#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {2103#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 01:20:07,501 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2041#(not (= |__VERIFIER_assert_#in~cond| 0))} {2110#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2103#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 01:20:07,502 INFO L290 TraceCheckUtils]: 17: Hoare triple {2041#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2041#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:07,502 INFO L290 TraceCheckUtils]: 16: Hoare triple {2120#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [90] L13-->L13-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[] {2041#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:07,502 INFO L290 TraceCheckUtils]: 15: Hoare triple {1983#true} [86] __VERIFIER_assertENTRY-->L13: 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] {2120#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 01:20:07,502 INFO L272 TraceCheckUtils]: 14: Hoare triple {2110#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1983#true} is VALID [2022-04-28 01:20:07,503 INFO L290 TraceCheckUtils]: 13: Hoare triple {2110#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2110#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-28 01:20:07,503 INFO L290 TraceCheckUtils]: 12: Hoare triple {2110#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [78] L33-3-->L33-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] {2110#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-28 01:20:07,504 INFO L290 TraceCheckUtils]: 11: Hoare triple {2133#(or (= (+ (* (- 1) main_~b~0 main_~a~0) (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (* main_~b~0 main_~a~0)) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2110#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-28 01:20:07,504 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2013#(not (= |assume_abort_if_not_#in~cond| 0))} {1983#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2133#(or (= (+ (* (- 1) main_~b~0 main_~a~0) (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (* main_~b~0 main_~a~0)) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} is VALID [2022-04-28 01:20:07,505 INFO L290 TraceCheckUtils]: 9: Hoare triple {2013#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2013#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:20:07,505 INFO L290 TraceCheckUtils]: 8: Hoare triple {2146#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2013#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:20:07,505 INFO L290 TraceCheckUtils]: 7: Hoare triple {1983#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2146#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 01:20:07,505 INFO L272 TraceCheckUtils]: 6: Hoare triple {1983#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1983#true} is VALID [2022-04-28 01:20:07,506 INFO L290 TraceCheckUtils]: 5: Hoare triple {1983#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1983#true} is VALID [2022-04-28 01:20:07,506 INFO L272 TraceCheckUtils]: 4: Hoare triple {1983#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1983#true} is VALID [2022-04-28 01:20:07,506 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1983#true} {1983#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1983#true} is VALID [2022-04-28 01:20:07,506 INFO L290 TraceCheckUtils]: 2: Hoare triple {1983#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1983#true} is VALID [2022-04-28 01:20:07,506 INFO L290 TraceCheckUtils]: 1: Hoare triple {1983#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {1983#true} is VALID [2022-04-28 01:20:07,506 INFO L272 TraceCheckUtils]: 0: Hoare triple {1983#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1983#true} is VALID [2022-04-28 01:20:07,506 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 01:20:07,506 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:20:07,506 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [960965621] [2022-04-28 01:20:07,506 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:20:07,506 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1496468716] [2022-04-28 01:20:07,506 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1496468716] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:20:07,506 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:20:07,507 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 20 [2022-04-28 01:20:07,507 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [821322688] [2022-04-28 01:20:07,507 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:20:07,507 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 28 [2022-04-28 01:20:07,507 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:20:07,507 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 01:20:07,542 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:20:07,542 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-28 01:20:07,543 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:20:07,543 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-28 01:20:07,543 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=67, Invalid=313, Unknown=0, NotChecked=0, Total=380 [2022-04-28 01:20:07,543 INFO L87 Difference]: Start difference. First operand 88 states and 101 transitions. Second operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 01:20:09,543 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:09,544 INFO L93 Difference]: Finished difference Result 123 states and 138 transitions. [2022-04-28 01:20:09,544 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 01:20:09,544 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 28 [2022-04-28 01:20:09,544 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:20:09,544 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 01:20:09,545 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 71 transitions. [2022-04-28 01:20:09,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 01:20:09,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 71 transitions. [2022-04-28 01:20:09,547 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 71 transitions. [2022-04-28 01:20:09,618 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-28 01:20:09,620 INFO L225 Difference]: With dead ends: 123 [2022-04-28 01:20:09,620 INFO L226 Difference]: Without dead ends: 112 [2022-04-28 01:20:09,620 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 36 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 122 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=127, Invalid=575, Unknown=0, NotChecked=0, Total=702 [2022-04-28 01:20:09,620 INFO L413 NwaCegarLoop]: 19 mSDtfsCounter, 50 mSDsluCounter, 161 mSDsCounter, 0 mSdLazyCounter, 278 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 314 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 278 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 01:20:09,621 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 180 Invalid, 314 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 278 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 01:20:09,621 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-04-28 01:20:09,655 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 91. [2022-04-28 01:20:09,656 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:20:09,656 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 91 states, 69 states have (on average 1.1884057971014492) internal successors, (82), 71 states have internal predecessors, (82), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:20:09,656 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 91 states, 69 states have (on average 1.1884057971014492) internal successors, (82), 71 states have internal predecessors, (82), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:20:09,656 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 91 states, 69 states have (on average 1.1884057971014492) internal successors, (82), 71 states have internal predecessors, (82), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:20:09,658 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:09,658 INFO L93 Difference]: Finished difference Result 112 states and 124 transitions. [2022-04-28 01:20:09,658 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 124 transitions. [2022-04-28 01:20:09,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:20:09,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:20:09,659 INFO L74 IsIncluded]: Start isIncluded. First operand has 91 states, 69 states have (on average 1.1884057971014492) internal successors, (82), 71 states have internal predecessors, (82), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 112 states. [2022-04-28 01:20:09,659 INFO L87 Difference]: Start difference. First operand has 91 states, 69 states have (on average 1.1884057971014492) internal successors, (82), 71 states have internal predecessors, (82), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 112 states. [2022-04-28 01:20:09,661 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:09,661 INFO L93 Difference]: Finished difference Result 112 states and 124 transitions. [2022-04-28 01:20:09,661 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 124 transitions. [2022-04-28 01:20:09,661 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:20:09,661 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:20:09,661 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:20:09,662 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:20:09,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 91 states, 69 states have (on average 1.1884057971014492) internal successors, (82), 71 states have internal predecessors, (82), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:20:09,663 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 103 transitions. [2022-04-28 01:20:09,663 INFO L78 Accepts]: Start accepts. Automaton has 91 states and 103 transitions. Word has length 28 [2022-04-28 01:20:09,663 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:20:09,664 INFO L495 AbstractCegarLoop]: Abstraction has 91 states and 103 transitions. [2022-04-28 01:20:09,664 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-28 01:20:09,664 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 103 transitions. [2022-04-28 01:20:09,664 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 01:20:09,664 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:20:09,664 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:20:09,682 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 01:20:09,880 WARN L477 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-28 01:20:09,880 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:20:09,881 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:20:09,881 INFO L85 PathProgramCache]: Analyzing trace with hash -357510123, now seen corresponding path program 1 times [2022-04-28 01:20:09,881 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:20:09,881 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [810431515] [2022-04-28 01:20:09,881 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:20:09,881 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:20:09,889 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:20:09,890 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [220477452] [2022-04-28 01:20:09,890 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:20:09,890 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:20:09,890 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:20:09,892 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-28 01:20:09,893 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-28 01:20:09,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:20:09,928 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 01:20:09,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:20:09,936 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:20:20,061 INFO L272 TraceCheckUtils]: 0: Hoare triple {2698#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:20,061 INFO L290 TraceCheckUtils]: 1: Hoare triple {2698#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {2698#true} is VALID [2022-04-28 01:20:20,061 INFO L290 TraceCheckUtils]: 2: Hoare triple {2698#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:20,061 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2698#true} {2698#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L272 TraceCheckUtils]: 4: Hoare triple {2698#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L290 TraceCheckUtils]: 5: Hoare triple {2698#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L272 TraceCheckUtils]: 6: Hoare triple {2698#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L290 TraceCheckUtils]: 7: Hoare triple {2698#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L290 TraceCheckUtils]: 8: Hoare triple {2698#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L290 TraceCheckUtils]: 9: Hoare triple {2698#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2698#true} {2698#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L290 TraceCheckUtils]: 11: Hoare triple {2698#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L290 TraceCheckUtils]: 12: Hoare triple {2698#true} [78] L33-3-->L33-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] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L290 TraceCheckUtils]: 13: Hoare triple {2698#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L272 TraceCheckUtils]: 14: Hoare triple {2698#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2698#true} is VALID [2022-04-28 01:20:20,062 INFO L290 TraceCheckUtils]: 15: Hoare triple {2698#true} [86] __VERIFIER_assertENTRY-->L13: 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] {2698#true} is VALID [2022-04-28 01:20:20,063 INFO L290 TraceCheckUtils]: 16: Hoare triple {2698#true} [90] L13-->L13-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[] {2698#true} is VALID [2022-04-28 01:20:20,063 INFO L290 TraceCheckUtils]: 17: Hoare triple {2698#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:20,063 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2698#true} {2698#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2698#true} is VALID [2022-04-28 01:20:20,063 INFO L290 TraceCheckUtils]: 19: Hoare triple {2698#true} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:20,063 INFO L290 TraceCheckUtils]: 20: Hoare triple {2698#true} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2698#true} is VALID [2022-04-28 01:20:20,063 INFO L290 TraceCheckUtils]: 21: Hoare triple {2698#true} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2698#true} is VALID [2022-04-28 01:20:20,063 INFO L290 TraceCheckUtils]: 22: Hoare triple {2698#true} [78] L33-3-->L33-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] {2698#true} is VALID [2022-04-28 01:20:20,063 INFO L290 TraceCheckUtils]: 23: Hoare triple {2698#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2698#true} is VALID [2022-04-28 01:20:20,063 INFO L272 TraceCheckUtils]: 24: Hoare triple {2698#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2698#true} is VALID [2022-04-28 01:20:20,064 INFO L290 TraceCheckUtils]: 25: Hoare triple {2698#true} [86] __VERIFIER_assertENTRY-->L13: 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] {2778#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:20:20,064 INFO L290 TraceCheckUtils]: 26: Hoare triple {2778#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [90] L13-->L13-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[] {2782#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:20,064 INFO L290 TraceCheckUtils]: 27: Hoare triple {2782#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2782#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:22,066 WARN L284 TraceCheckUtils]: 28: Hoare quadruple {2782#(not (= |__VERIFIER_assert_#in~cond| 0))} {2698#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2789#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} is UNKNOWN [2022-04-28 01:20:22,067 INFO L290 TraceCheckUtils]: 29: Hoare triple {2789#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} [91] L34-1-->L33-4: Formula: (= v_main_~y~0_7 0) InVars {main_~y~0=v_main_~y~0_7} OutVars{main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[] {2793#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:20:22,067 INFO L272 TraceCheckUtils]: 30: Hoare triple {2793#(= main_~z~0 (* main_~b~0 main_~a~0))} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {2797#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:20:22,068 INFO L290 TraceCheckUtils]: 31: Hoare triple {2797#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: 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] {2801#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:20:22,068 INFO L290 TraceCheckUtils]: 32: Hoare triple {2801#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: 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[] {2699#false} is VALID [2022-04-28 01:20:22,068 INFO L290 TraceCheckUtils]: 33: Hoare triple {2699#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2699#false} is VALID [2022-04-28 01:20:22,068 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 01:20:22,068 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:20:37,704 INFO L290 TraceCheckUtils]: 33: Hoare triple {2699#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2699#false} is VALID [2022-04-28 01:20:37,705 INFO L290 TraceCheckUtils]: 32: Hoare triple {2801#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: 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[] {2699#false} is VALID [2022-04-28 01:20:37,705 INFO L290 TraceCheckUtils]: 31: Hoare triple {2797#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: 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] {2801#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:20:37,706 INFO L272 TraceCheckUtils]: 30: Hoare triple {2793#(= main_~z~0 (* main_~b~0 main_~a~0))} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {2797#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:20:37,706 INFO L290 TraceCheckUtils]: 29: Hoare triple {2820#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} [91] L34-1-->L33-4: Formula: (= v_main_~y~0_7 0) InVars {main_~y~0=v_main_~y~0_7} OutVars{main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[] {2793#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:20:37,707 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2782#(not (= |__VERIFIER_assert_#in~cond| 0))} {2698#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2820#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-28 01:20:37,707 INFO L290 TraceCheckUtils]: 27: Hoare triple {2782#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2782#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:37,707 INFO L290 TraceCheckUtils]: 26: Hoare triple {2833#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [90] L13-->L13-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[] {2782#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:20:37,708 INFO L290 TraceCheckUtils]: 25: Hoare triple {2698#true} [86] __VERIFIER_assertENTRY-->L13: 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] {2833#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 01:20:37,708 INFO L272 TraceCheckUtils]: 24: Hoare triple {2698#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2698#true} is VALID [2022-04-28 01:20:37,708 INFO L290 TraceCheckUtils]: 23: Hoare triple {2698#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2698#true} is VALID [2022-04-28 01:20:37,708 INFO L290 TraceCheckUtils]: 22: Hoare triple {2698#true} [78] L33-3-->L33-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] {2698#true} is VALID [2022-04-28 01:20:37,708 INFO L290 TraceCheckUtils]: 21: Hoare triple {2698#true} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2698#true} is VALID [2022-04-28 01:20:37,708 INFO L290 TraceCheckUtils]: 20: Hoare triple {2698#true} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2698#true} is VALID [2022-04-28 01:20:37,708 INFO L290 TraceCheckUtils]: 19: Hoare triple {2698#true} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:37,708 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2698#true} {2698#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2698#true} is VALID [2022-04-28 01:20:37,708 INFO L290 TraceCheckUtils]: 17: Hoare triple {2698#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:37,708 INFO L290 TraceCheckUtils]: 16: Hoare triple {2698#true} [90] L13-->L13-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[] {2698#true} is VALID [2022-04-28 01:20:37,708 INFO L290 TraceCheckUtils]: 15: Hoare triple {2698#true} [86] __VERIFIER_assertENTRY-->L13: 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] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L272 TraceCheckUtils]: 14: Hoare triple {2698#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L290 TraceCheckUtils]: 13: Hoare triple {2698#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L290 TraceCheckUtils]: 12: Hoare triple {2698#true} [78] L33-3-->L33-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] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L290 TraceCheckUtils]: 11: Hoare triple {2698#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2698#true} {2698#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L290 TraceCheckUtils]: 9: Hoare triple {2698#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L290 TraceCheckUtils]: 8: Hoare triple {2698#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L290 TraceCheckUtils]: 7: Hoare triple {2698#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L272 TraceCheckUtils]: 6: Hoare triple {2698#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L290 TraceCheckUtils]: 5: Hoare triple {2698#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L272 TraceCheckUtils]: 4: Hoare triple {2698#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:37,709 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2698#true} {2698#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:37,710 INFO L290 TraceCheckUtils]: 2: Hoare triple {2698#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:37,710 INFO L290 TraceCheckUtils]: 1: Hoare triple {2698#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {2698#true} is VALID [2022-04-28 01:20:37,710 INFO L272 TraceCheckUtils]: 0: Hoare triple {2698#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2698#true} is VALID [2022-04-28 01:20:37,710 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 01:20:37,710 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:20:37,710 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [810431515] [2022-04-28 01:20:37,710 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:20:37,710 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [220477452] [2022-04-28 01:20:37,710 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [220477452] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:20:37,710 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:20:37,710 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-28 01:20:37,710 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [22475249] [2022-04-28 01:20:37,710 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:20:37,711 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-28 01:20:37,711 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:20:37,711 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 01:20:39,745 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 34 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 01:20:39,745 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 01:20:39,745 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:20:39,746 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 01:20:39,746 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-28 01:20:39,746 INFO L87 Difference]: Start difference. First operand 91 states and 103 transitions. Second operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 01:20:41,782 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-28 01:20:42,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:42,418 INFO L93 Difference]: Finished difference Result 100 states and 111 transitions. [2022-04-28 01:20:42,418 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 01:20:42,418 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-28 01:20:42,418 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:20:42,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 01:20:42,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-28 01:20:42,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 01:20:42,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-28 01:20:42,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 39 transitions. [2022-04-28 01:20:46,446 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 37 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 01:20:46,447 INFO L225 Difference]: With dead ends: 100 [2022-04-28 01:20:46,447 INFO L226 Difference]: Without dead ends: 90 [2022-04-28 01:20:46,447 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 58 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-28 01:20:46,448 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 15 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 80 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 122 SdHoareTripleChecker+Invalid, 83 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 80 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-28 01:20:46,448 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [15 Valid, 122 Invalid, 83 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 80 Invalid, 1 Unknown, 0 Unchecked, 2.3s Time] [2022-04-28 01:20:46,448 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-28 01:20:46,475 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 88. [2022-04-28 01:20:46,475 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:20:46,476 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 88 states, 67 states have (on average 1.1343283582089552) internal successors, (76), 69 states have internal predecessors, (76), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:20:46,476 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 88 states, 67 states have (on average 1.1343283582089552) internal successors, (76), 69 states have internal predecessors, (76), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:20:46,476 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 88 states, 67 states have (on average 1.1343283582089552) internal successors, (76), 69 states have internal predecessors, (76), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:20:46,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:46,478 INFO L93 Difference]: Finished difference Result 90 states and 98 transitions. [2022-04-28 01:20:46,478 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 98 transitions. [2022-04-28 01:20:46,478 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:20:46,478 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:20:46,479 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 67 states have (on average 1.1343283582089552) internal successors, (76), 69 states have internal predecessors, (76), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 90 states. [2022-04-28 01:20:46,479 INFO L87 Difference]: Start difference. First operand has 88 states, 67 states have (on average 1.1343283582089552) internal successors, (76), 69 states have internal predecessors, (76), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 90 states. [2022-04-28 01:20:46,480 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:20:46,480 INFO L93 Difference]: Finished difference Result 90 states and 98 transitions. [2022-04-28 01:20:46,480 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 98 transitions. [2022-04-28 01:20:46,480 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:20:46,480 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:20:46,481 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:20:46,481 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:20:46,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 67 states have (on average 1.1343283582089552) internal successors, (76), 69 states have internal predecessors, (76), 11 states have call successors, (11), 10 states have call predecessors, (11), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 01:20:46,482 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 96 transitions. [2022-04-28 01:20:46,482 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 96 transitions. Word has length 34 [2022-04-28 01:20:46,482 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:20:46,482 INFO L495 AbstractCegarLoop]: Abstraction has 88 states and 96 transitions. [2022-04-28 01:20:46,482 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 01:20:46,482 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 96 transitions. [2022-04-28 01:20:46,483 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-28 01:20:46,483 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:20:46,483 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:20:46,506 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-28 01:20:46,695 WARN L477 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-28 01:20:46,695 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:20:46,696 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:20:46,696 INFO L85 PathProgramCache]: Analyzing trace with hash 199111383, now seen corresponding path program 1 times [2022-04-28 01:20:46,696 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:20:46,696 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [636669922] [2022-04-28 01:20:46,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:20:46,696 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:20:46,711 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:20:46,711 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [551858939] [2022-04-28 01:20:46,711 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:20:46,711 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:20:46,711 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:20:46,715 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-28 01:20:46,716 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-28 01:20:46,766 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:20:46,767 INFO L263 TraceCheckSpWp]: Trace formula consists of 154 conjuncts, 42 conjunts are in the unsatisfiable core [2022-04-28 01:20:46,837 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:20:46,839 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:21:11,407 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 01:21:38,183 WARN L232 SmtUtils]: Spent 13.45s on a formula simplification. DAG size of input: 64 DAG size of output: 50 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-28 01:28:35,506 INFO L272 TraceCheckUtils]: 0: Hoare triple {3347#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:28:35,506 INFO L290 TraceCheckUtils]: 1: Hoare triple {3347#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {3347#true} is VALID [2022-04-28 01:28:35,506 INFO L290 TraceCheckUtils]: 2: Hoare triple {3347#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:28:35,507 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3347#true} {3347#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:28:35,507 INFO L272 TraceCheckUtils]: 4: Hoare triple {3347#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:28:35,507 INFO L290 TraceCheckUtils]: 5: Hoare triple {3347#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3347#true} is VALID [2022-04-28 01:28:35,507 INFO L272 TraceCheckUtils]: 6: Hoare triple {3347#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3347#true} is VALID [2022-04-28 01:28:35,507 INFO L290 TraceCheckUtils]: 7: Hoare triple {3347#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3347#true} is VALID [2022-04-28 01:28:35,507 INFO L290 TraceCheckUtils]: 8: Hoare triple {3347#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:28:35,507 INFO L290 TraceCheckUtils]: 9: Hoare triple {3347#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:28:35,508 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3347#true} {3347#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3347#true} is VALID [2022-04-28 01:28:35,508 INFO L290 TraceCheckUtils]: 11: Hoare triple {3347#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {3385#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:28:35,508 INFO L290 TraceCheckUtils]: 12: Hoare triple {3385#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-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] {3385#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:28:35,509 INFO L290 TraceCheckUtils]: 13: Hoare triple {3385#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3385#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:28:35,509 INFO L272 TraceCheckUtils]: 14: Hoare triple {3385#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3347#true} is VALID [2022-04-28 01:28:35,509 INFO L290 TraceCheckUtils]: 15: Hoare triple {3347#true} [86] __VERIFIER_assertENTRY-->L13: 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] {3347#true} is VALID [2022-04-28 01:28:35,509 INFO L290 TraceCheckUtils]: 16: Hoare triple {3347#true} [90] L13-->L13-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[] {3347#true} is VALID [2022-04-28 01:28:35,509 INFO L290 TraceCheckUtils]: 17: Hoare triple {3347#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:28:35,510 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3347#true} {3385#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3385#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:28:35,510 INFO L290 TraceCheckUtils]: 19: Hoare triple {3385#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {3410#(and (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:28:35,511 INFO L290 TraceCheckUtils]: 20: Hoare triple {3410#(and (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {3414#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:28:35,512 INFO L290 TraceCheckUtils]: 21: Hoare triple {3414#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3418#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:28:35,512 INFO L290 TraceCheckUtils]: 22: Hoare triple {3418#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [78] L33-3-->L33-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] {3418#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:28:35,515 INFO L290 TraceCheckUtils]: 23: Hoare triple {3418#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3418#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:28:35,515 INFO L272 TraceCheckUtils]: 24: Hoare triple {3418#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3347#true} is VALID [2022-04-28 01:28:35,516 INFO L290 TraceCheckUtils]: 25: Hoare triple {3347#true} [86] __VERIFIER_assertENTRY-->L13: 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] {3431#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:28:35,516 INFO L290 TraceCheckUtils]: 26: Hoare triple {3431#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [90] L13-->L13-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[] {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:28:35,516 INFO L290 TraceCheckUtils]: 27: Hoare triple {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:28:35,517 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} {3418#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3442#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:28:35,518 INFO L290 TraceCheckUtils]: 29: Hoare triple {3442#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {3446#(and (not (= main_~y~0 0)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-28 01:28:35,520 INFO L290 TraceCheckUtils]: 30: Hoare triple {3446#(and (not (= main_~y~0 0)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {3450#(and (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= (div (+ (- 1) main_~b~0) 2) (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} is VALID [2022-04-28 01:28:35,523 INFO L290 TraceCheckUtils]: 31: Hoare triple {3450#(and (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= (div (+ (- 1) main_~b~0) 2) (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3454#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} is VALID [2022-04-28 01:28:35,524 INFO L290 TraceCheckUtils]: 32: Hoare triple {3454#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} [78] L33-3-->L33-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] {3454#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} is VALID [2022-04-28 01:28:35,524 INFO L290 TraceCheckUtils]: 33: Hoare triple {3454#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3454#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} is VALID [2022-04-28 01:28:35,525 INFO L272 TraceCheckUtils]: 34: Hoare triple {3454#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3347#true} is VALID [2022-04-28 01:28:35,525 INFO L290 TraceCheckUtils]: 35: Hoare triple {3347#true} [86] __VERIFIER_assertENTRY-->L13: 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] {3431#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:28:35,525 INFO L290 TraceCheckUtils]: 36: Hoare triple {3431#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [90] L13-->L13-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[] {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:28:35,525 INFO L290 TraceCheckUtils]: 37: Hoare triple {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:28:35,526 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} {3454#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3476#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 4) main_~x~0) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} is VALID [2022-04-28 01:28:35,527 INFO L290 TraceCheckUtils]: 39: Hoare triple {3476#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 4) main_~x~0) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {3476#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 4) main_~x~0) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} is VALID [2022-04-28 01:28:35,528 INFO L290 TraceCheckUtils]: 40: Hoare triple {3476#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 4) main_~x~0) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2)))) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {3483#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 4) main_~x~0) (not (= (mod main_~y~0 2) 1)) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ (* 2 (* (div (+ (- 1) main_~b~0) 2) main_~a~0)) main_~z~0)))} is VALID [2022-04-28 01:28:35,537 INFO L290 TraceCheckUtils]: 41: Hoare triple {3483#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 4) main_~x~0) (not (= (mod main_~y~0 2) 1)) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ main_~y~0 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ (* 2 (* (div (+ (- 1) main_~b~0) 2) main_~a~0)) main_~z~0)))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3487#(and (<= 1 (mod main_~b~0 2)) (exists ((aux_mod_v_main_~y~0_33_22 Int) (aux_div_v_main_~y~0_33_22 Int)) (and (= (* main_~b~0 main_~a~0) (+ (* (* main_~a~0 4) (+ aux_mod_v_main_~y~0_33_22 (* aux_div_v_main_~y~0_33_22 2))) main_~z~0)) (<= 0 aux_mod_v_main_~y~0_33_22) (= (div (+ aux_mod_v_main_~y~0_33_22 (* aux_div_v_main_~y~0_33_22 2)) 2) main_~y~0) (< aux_mod_v_main_~y~0_33_22 2) (not (= aux_mod_v_main_~y~0_33_22 1)) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ aux_mod_v_main_~y~0_33_22 (* aux_div_v_main_~y~0_33_22 2) 1)))) (= main_~x~0 (* main_~a~0 8)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ (* 2 (* (div (+ (- 1) main_~b~0) 2) main_~a~0)) main_~z~0)))} is VALID [2022-04-28 01:28:36,160 INFO L290 TraceCheckUtils]: 42: Hoare triple {3487#(and (<= 1 (mod main_~b~0 2)) (exists ((aux_mod_v_main_~y~0_33_22 Int) (aux_div_v_main_~y~0_33_22 Int)) (and (= (* main_~b~0 main_~a~0) (+ (* (* main_~a~0 4) (+ aux_mod_v_main_~y~0_33_22 (* aux_div_v_main_~y~0_33_22 2))) main_~z~0)) (<= 0 aux_mod_v_main_~y~0_33_22) (= (div (+ aux_mod_v_main_~y~0_33_22 (* aux_div_v_main_~y~0_33_22 2)) 2) main_~y~0) (< aux_mod_v_main_~y~0_33_22 2) (not (= aux_mod_v_main_~y~0_33_22 1)) (< (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2)) (+ aux_mod_v_main_~y~0_33_22 (* aux_div_v_main_~y~0_33_22 2) 1)))) (= main_~x~0 (* main_~a~0 8)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ (* 2 (* (div (+ (- 1) main_~b~0) 2) main_~a~0)) main_~z~0)))} [78] L33-3-->L33-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] {3491#(and (<= 1 (mod main_~b~0 2)) (= (mod (+ (* main_~z~0 3) (* main_~a~0 main_~y~0 (- 8)) (* main_~b~0 main_~a~0)) 4) 0) (= main_~x~0 (* main_~a~0 8)) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 4) (* 2 (* main_~a~0 main_~y~0))) (< (div (* (- 1) (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2))) (- 2)) (+ main_~y~0 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ (* 2 (* (div (+ (- 1) main_~b~0) 2) main_~a~0)) main_~z~0)))} is VALID [2022-04-28 01:28:36,161 INFO L290 TraceCheckUtils]: 43: Hoare triple {3491#(and (<= 1 (mod main_~b~0 2)) (= (mod (+ (* main_~z~0 3) (* main_~a~0 main_~y~0 (- 8)) (* main_~b~0 main_~a~0)) 4) 0) (= main_~x~0 (* main_~a~0 8)) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 4) (* 2 (* main_~a~0 main_~y~0))) (< (div (* (- 1) (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2))) (- 2)) (+ main_~y~0 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ (* 2 (* (div (+ (- 1) main_~b~0) 2) main_~a~0)) main_~z~0)))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3491#(and (<= 1 (mod main_~b~0 2)) (= (mod (+ (* main_~z~0 3) (* main_~a~0 main_~y~0 (- 8)) (* main_~b~0 main_~a~0)) 4) 0) (= main_~x~0 (* main_~a~0 8)) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 4) (* 2 (* main_~a~0 main_~y~0))) (< (div (* (- 1) (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2))) (- 2)) (+ main_~y~0 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ (* 2 (* (div (+ (- 1) main_~b~0) 2) main_~a~0)) main_~z~0)))} is VALID [2022-04-28 01:28:36,169 INFO L272 TraceCheckUtils]: 44: Hoare triple {3491#(and (<= 1 (mod main_~b~0 2)) (= (mod (+ (* main_~z~0 3) (* main_~a~0 main_~y~0 (- 8)) (* main_~b~0 main_~a~0)) 4) 0) (= main_~x~0 (* main_~a~0 8)) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 4) (* 2 (* main_~a~0 main_~y~0))) (< (div (* (- 1) (div (+ (* (- 1) (div (+ (- 1) main_~b~0) 2)) 2) (- 2))) (- 2)) (+ main_~y~0 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 0 main_~b~0) (= (+ (* main_~a~0 2) (* main_~b~0 main_~a~0)) (+ (* 2 (* (div (+ (- 1) main_~b~0) 2) main_~a~0)) main_~z~0)))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3498#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:28:36,170 INFO L290 TraceCheckUtils]: 45: Hoare triple {3498#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: 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] {3502#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:28:36,170 INFO L290 TraceCheckUtils]: 46: Hoare triple {3502#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: 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[] {3348#false} is VALID [2022-04-28 01:28:36,170 INFO L290 TraceCheckUtils]: 47: Hoare triple {3348#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3348#false} is VALID [2022-04-28 01:28:36,170 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 10 proven. 29 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-28 01:28:36,170 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:30:32,194 INFO L290 TraceCheckUtils]: 47: Hoare triple {3348#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3348#false} is VALID [2022-04-28 01:30:32,195 INFO L290 TraceCheckUtils]: 46: Hoare triple {3502#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: 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[] {3348#false} is VALID [2022-04-28 01:30:32,195 INFO L290 TraceCheckUtils]: 45: Hoare triple {3498#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: 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] {3502#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:30:32,196 INFO L272 TraceCheckUtils]: 44: Hoare triple {3518#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3498#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:30:32,196 INFO L290 TraceCheckUtils]: 43: Hoare triple {3518#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3518#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:30:32,197 INFO L290 TraceCheckUtils]: 42: Hoare triple {3518#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L33-3-->L33-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] {3518#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:30:32,233 INFO L290 TraceCheckUtils]: 41: Hoare triple {3528#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3518#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-28 01:30:32,238 INFO L290 TraceCheckUtils]: 40: Hoare triple {3532#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {3528#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-28 01:30:32,239 INFO L290 TraceCheckUtils]: 39: Hoare triple {3532#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {3532#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 01:30:32,242 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} {3539#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3532#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-28 01:30:32,243 INFO L290 TraceCheckUtils]: 37: Hoare triple {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:30:32,243 INFO L290 TraceCheckUtils]: 36: Hoare triple {3549#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [90] L13-->L13-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[] {3435#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:30:32,243 INFO L290 TraceCheckUtils]: 35: Hoare triple {3347#true} [86] __VERIFIER_assertENTRY-->L13: 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] {3549#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 01:30:32,243 INFO L272 TraceCheckUtils]: 34: Hoare triple {3539#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3347#true} is VALID [2022-04-28 01:30:32,244 INFO L290 TraceCheckUtils]: 33: Hoare triple {3539#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3539#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} is VALID [2022-04-28 01:30:32,245 INFO L290 TraceCheckUtils]: 32: Hoare triple {3539#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} [78] L33-3-->L33-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] {3539#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} is VALID [2022-04-28 01:30:32,267 INFO L290 TraceCheckUtils]: 31: Hoare triple {3562#(forall ((aux_div_v_main_~y~0_37_22 Int) (aux_div_aux_mod_v_main_~y~0_37_22_69 Int) (aux_mod_aux_mod_v_main_~y~0_37_22_69 Int)) (or (<= (+ 2 (* aux_div_v_main_~y~0_37_22 2)) (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69))) (<= 0 (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69))) (> 0 aux_mod_aux_mod_v_main_~y~0_37_22_69) (= (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* (- 2) aux_div_v_main_~y~0_37_22) (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69)) 0) (>= aux_mod_aux_mod_v_main_~y~0_37_22_69 2) (< (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69)) (* aux_div_v_main_~y~0_37_22 2)) (not (= (+ main_~z~0 (* (* main_~x~0 2) (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69)))) (* main_~b~0 main_~a~0))) (= (* main_~b~0 main_~a~0) (+ (* (* main_~x~0 aux_div_aux_mod_v_main_~y~0_37_22_69) 4) main_~z~0 (* main_~x~0 4))) (and (< (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69)) (+ (div main_~y~0 2) 1)) (or (not (<= (div main_~y~0 2) (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69)))) (not (= (mod main_~y~0 2) 0))))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3539#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} is VALID [2022-04-28 01:30:32,269 INFO L290 TraceCheckUtils]: 30: Hoare triple {3347#true} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {3562#(forall ((aux_div_v_main_~y~0_37_22 Int) (aux_div_aux_mod_v_main_~y~0_37_22_69 Int) (aux_mod_aux_mod_v_main_~y~0_37_22_69 Int)) (or (<= (+ 2 (* aux_div_v_main_~y~0_37_22 2)) (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69))) (<= 0 (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69))) (> 0 aux_mod_aux_mod_v_main_~y~0_37_22_69) (= (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* (- 2) aux_div_v_main_~y~0_37_22) (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69)) 0) (>= aux_mod_aux_mod_v_main_~y~0_37_22_69 2) (< (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69)) (* aux_div_v_main_~y~0_37_22 2)) (not (= (+ main_~z~0 (* (* main_~x~0 2) (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69)))) (* main_~b~0 main_~a~0))) (= (* main_~b~0 main_~a~0) (+ (* (* main_~x~0 aux_div_aux_mod_v_main_~y~0_37_22_69) 4) main_~z~0 (* main_~x~0 4))) (and (< (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69)) (+ (div main_~y~0 2) 1)) (or (not (<= (div main_~y~0 2) (+ aux_mod_aux_mod_v_main_~y~0_37_22_69 (* 2 aux_div_aux_mod_v_main_~y~0_37_22_69)))) (not (= (mod main_~y~0 2) 0))))))} is VALID [2022-04-28 01:30:32,269 INFO L290 TraceCheckUtils]: 29: Hoare triple {3347#true} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:30:32,269 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3347#true} {3347#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3347#true} is VALID [2022-04-28 01:30:32,269 INFO L290 TraceCheckUtils]: 27: Hoare triple {3347#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:30:32,269 INFO L290 TraceCheckUtils]: 26: Hoare triple {3347#true} [90] L13-->L13-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[] {3347#true} is VALID [2022-04-28 01:30:32,269 INFO L290 TraceCheckUtils]: 25: Hoare triple {3347#true} [86] __VERIFIER_assertENTRY-->L13: 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] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L272 TraceCheckUtils]: 24: Hoare triple {3347#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L290 TraceCheckUtils]: 23: Hoare triple {3347#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L290 TraceCheckUtils]: 22: Hoare triple {3347#true} [78] L33-3-->L33-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] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L290 TraceCheckUtils]: 21: Hoare triple {3347#true} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L290 TraceCheckUtils]: 20: Hoare triple {3347#true} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L290 TraceCheckUtils]: 19: Hoare triple {3347#true} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3347#true} {3347#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L290 TraceCheckUtils]: 17: Hoare triple {3347#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L290 TraceCheckUtils]: 16: Hoare triple {3347#true} [90] L13-->L13-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[] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L290 TraceCheckUtils]: 15: Hoare triple {3347#true} [86] __VERIFIER_assertENTRY-->L13: 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] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L272 TraceCheckUtils]: 14: Hoare triple {3347#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L290 TraceCheckUtils]: 13: Hoare triple {3347#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L290 TraceCheckUtils]: 12: Hoare triple {3347#true} [78] L33-3-->L33-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] {3347#true} is VALID [2022-04-28 01:30:32,270 INFO L290 TraceCheckUtils]: 11: Hoare triple {3347#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {3347#true} is VALID [2022-04-28 01:30:32,271 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3347#true} {3347#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3347#true} is VALID [2022-04-28 01:30:32,271 INFO L290 TraceCheckUtils]: 9: Hoare triple {3347#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:30:32,271 INFO L290 TraceCheckUtils]: 8: Hoare triple {3347#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:30:32,271 INFO L290 TraceCheckUtils]: 7: Hoare triple {3347#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3347#true} is VALID [2022-04-28 01:30:32,271 INFO L272 TraceCheckUtils]: 6: Hoare triple {3347#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3347#true} is VALID [2022-04-28 01:30:32,271 INFO L290 TraceCheckUtils]: 5: Hoare triple {3347#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3347#true} is VALID [2022-04-28 01:30:32,271 INFO L272 TraceCheckUtils]: 4: Hoare triple {3347#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:30:32,271 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3347#true} {3347#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:30:32,271 INFO L290 TraceCheckUtils]: 2: Hoare triple {3347#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:30:32,271 INFO L290 TraceCheckUtils]: 1: Hoare triple {3347#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {3347#true} is VALID [2022-04-28 01:30:32,271 INFO L272 TraceCheckUtils]: 0: Hoare triple {3347#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3347#true} is VALID [2022-04-28 01:30:32,272 INFO L134 CoverageAnalysis]: Checked inductivity of 45 backedges. 29 proven. 5 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-28 01:30:32,272 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:30:32,272 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [636669922] [2022-04-28 01:30:32,272 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:30:32,272 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [551858939] [2022-04-28 01:30:32,272 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [551858939] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:30:32,272 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:30:32,272 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 11] total 24 [2022-04-28 01:30:32,272 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [653181644] [2022-04-28 01:30:32,272 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:30:32,273 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 2.0833333333333335) internal successors, (50), 22 states have internal predecessors, (50), 7 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 5 states have call predecessors, (7), 5 states have call successors, (7) Word has length 48 [2022-04-28 01:30:32,274 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:30:32,274 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 24 states, 24 states have (on average 2.0833333333333335) internal successors, (50), 22 states have internal predecessors, (50), 7 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 5 states have call predecessors, (7), 5 states have call successors, (7) [2022-04-28 01:30:32,686 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-28 01:30:32,686 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-04-28 01:30:32,686 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:30:32,687 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-04-28 01:30:32,687 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=94, Invalid=457, Unknown=1, NotChecked=0, Total=552 [2022-04-28 01:30:32,687 INFO L87 Difference]: Start difference. First operand 88 states and 96 transitions. Second operand has 24 states, 24 states have (on average 2.0833333333333335) internal successors, (50), 22 states have internal predecessors, (50), 7 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 5 states have call predecessors, (7), 5 states have call successors, (7) [2022-04-28 01:30:44,110 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.86s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 01:30:49,599 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:30:49,599 INFO L93 Difference]: Finished difference Result 121 states and 134 transitions. [2022-04-28 01:30:49,599 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 01:30:49,599 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 2.0833333333333335) internal successors, (50), 22 states have internal predecessors, (50), 7 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 5 states have call predecessors, (7), 5 states have call successors, (7) Word has length 48 [2022-04-28 01:30:49,599 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:30:49,599 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 2.0833333333333335) internal successors, (50), 22 states have internal predecessors, (50), 7 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 5 states have call predecessors, (7), 5 states have call successors, (7) [2022-04-28 01:30:49,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 79 transitions. [2022-04-28 01:30:49,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 2.0833333333333335) internal successors, (50), 22 states have internal predecessors, (50), 7 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 5 states have call predecessors, (7), 5 states have call successors, (7) [2022-04-28 01:30:49,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 79 transitions. [2022-04-28 01:30:49,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 79 transitions. [2022-04-28 01:30:53,249 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:30:53,251 INFO L225 Difference]: With dead ends: 121 [2022-04-28 01:30:53,251 INFO L226 Difference]: Without dead ends: 119 [2022-04-28 01:30:53,251 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 109 GetRequests, 74 SyntacticMatches, 3 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 264 ImplicationChecksByTransitivity, 27.9s TimeCoverageRelationStatistics Valid=180, Invalid=940, Unknown=2, NotChecked=0, Total=1122 [2022-04-28 01:30:53,252 INFO L413 NwaCegarLoop]: 28 mSDtfsCounter, 41 mSDsluCounter, 276 mSDsCounter, 0 mSdLazyCounter, 352 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 304 SdHoareTripleChecker+Invalid, 440 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 352 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 62 IncrementalHoareTripleChecker+Unchecked, 5.5s IncrementalHoareTripleChecker+Time [2022-04-28 01:30:53,252 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [42 Valid, 304 Invalid, 440 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 352 Invalid, 0 Unknown, 62 Unchecked, 5.5s Time] [2022-04-28 01:30:53,252 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-04-28 01:30:53,300 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 116. [2022-04-28 01:30:53,300 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:30:53,300 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 116 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 93 states have internal predecessors, (101), 15 states have call successors, (15), 12 states have call predecessors, (15), 11 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:30:53,300 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 116 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 93 states have internal predecessors, (101), 15 states have call successors, (15), 12 states have call predecessors, (15), 11 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:30:53,301 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 116 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 93 states have internal predecessors, (101), 15 states have call successors, (15), 12 states have call predecessors, (15), 11 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:30:53,303 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:30:53,303 INFO L93 Difference]: Finished difference Result 119 states and 132 transitions. [2022-04-28 01:30:53,303 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 132 transitions. [2022-04-28 01:30:53,303 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:30:53,303 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:30:53,303 INFO L74 IsIncluded]: Start isIncluded. First operand has 116 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 93 states have internal predecessors, (101), 15 states have call successors, (15), 12 states have call predecessors, (15), 11 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 119 states. [2022-04-28 01:30:53,304 INFO L87 Difference]: Start difference. First operand has 116 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 93 states have internal predecessors, (101), 15 states have call successors, (15), 12 states have call predecessors, (15), 11 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 119 states. [2022-04-28 01:30:53,306 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:30:53,306 INFO L93 Difference]: Finished difference Result 119 states and 132 transitions. [2022-04-28 01:30:53,306 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 132 transitions. [2022-04-28 01:30:53,306 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:30:53,306 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:30:53,306 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:30:53,306 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:30:53,306 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 116 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 93 states have internal predecessors, (101), 15 states have call successors, (15), 12 states have call predecessors, (15), 11 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 01:30:53,308 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 129 transitions. [2022-04-28 01:30:53,308 INFO L78 Accepts]: Start accepts. Automaton has 116 states and 129 transitions. Word has length 48 [2022-04-28 01:30:53,308 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:30:53,308 INFO L495 AbstractCegarLoop]: Abstraction has 116 states and 129 transitions. [2022-04-28 01:30:53,308 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 24 states have (on average 2.0833333333333335) internal successors, (50), 22 states have internal predecessors, (50), 7 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (7), 5 states have call predecessors, (7), 5 states have call successors, (7) [2022-04-28 01:30:53,309 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 129 transitions. [2022-04-28 01:30:53,309 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 01:30:53,309 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:30:53,309 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:30:53,325 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 01:30:53,515 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-28 01:30:53,515 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:30:53,516 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:30:53,516 INFO L85 PathProgramCache]: Analyzing trace with hash -831185954, now seen corresponding path program 2 times [2022-04-28 01:30:53,516 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:30:53,516 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [118969740] [2022-04-28 01:30:53,516 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:30:53,516 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:30:53,527 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:30:53,527 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [876352506] [2022-04-28 01:30:53,527 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 01:30:53,527 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:30:53,527 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:30:53,528 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 01:30:53,529 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 01:30:53,572 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 01:30:53,572 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 01:30:53,572 INFO L263 TraceCheckSpWp]: Trace formula consists of 184 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 01:30:53,583 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:30:53,584 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:30:53,835 INFO L272 TraceCheckUtils]: 0: Hoare triple {4239#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4239#true} is VALID [2022-04-28 01:30:53,836 INFO L290 TraceCheckUtils]: 1: Hoare triple {4239#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:53,836 INFO L290 TraceCheckUtils]: 2: Hoare triple {4247#(<= ~counter~0 0)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:53,836 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4247#(<= ~counter~0 0)} {4239#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:53,837 INFO L272 TraceCheckUtils]: 4: Hoare triple {4247#(<= ~counter~0 0)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:53,837 INFO L290 TraceCheckUtils]: 5: Hoare triple {4247#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:53,837 INFO L272 TraceCheckUtils]: 6: Hoare triple {4247#(<= ~counter~0 0)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:53,838 INFO L290 TraceCheckUtils]: 7: Hoare triple {4247#(<= ~counter~0 0)} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:53,838 INFO L290 TraceCheckUtils]: 8: Hoare triple {4247#(<= ~counter~0 0)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:53,838 INFO L290 TraceCheckUtils]: 9: Hoare triple {4247#(<= ~counter~0 0)} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:53,838 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4247#(<= ~counter~0 0)} {4247#(<= ~counter~0 0)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:53,839 INFO L290 TraceCheckUtils]: 11: Hoare triple {4247#(<= ~counter~0 0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:53,839 INFO L290 TraceCheckUtils]: 12: Hoare triple {4247#(<= ~counter~0 0)} [78] L33-3-->L33-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] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:53,839 INFO L290 TraceCheckUtils]: 13: Hoare triple {4281#(<= ~counter~0 1)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:53,840 INFO L272 TraceCheckUtils]: 14: Hoare triple {4281#(<= ~counter~0 1)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:53,840 INFO L290 TraceCheckUtils]: 15: Hoare triple {4281#(<= ~counter~0 1)} [86] __VERIFIER_assertENTRY-->L13: 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] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:53,840 INFO L290 TraceCheckUtils]: 16: Hoare triple {4281#(<= ~counter~0 1)} [90] L13-->L13-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[] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:53,841 INFO L290 TraceCheckUtils]: 17: Hoare triple {4281#(<= ~counter~0 1)} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:53,841 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4281#(<= ~counter~0 1)} {4281#(<= ~counter~0 1)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:53,841 INFO L290 TraceCheckUtils]: 19: Hoare triple {4281#(<= ~counter~0 1)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:53,846 INFO L290 TraceCheckUtils]: 20: Hoare triple {4281#(<= ~counter~0 1)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:53,846 INFO L290 TraceCheckUtils]: 21: Hoare triple {4281#(<= ~counter~0 1)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:53,847 INFO L290 TraceCheckUtils]: 22: Hoare triple {4281#(<= ~counter~0 1)} [78] L33-3-->L33-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] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:53,847 INFO L290 TraceCheckUtils]: 23: Hoare triple {4312#(<= ~counter~0 2)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:53,848 INFO L272 TraceCheckUtils]: 24: Hoare triple {4312#(<= ~counter~0 2)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:53,848 INFO L290 TraceCheckUtils]: 25: Hoare triple {4312#(<= ~counter~0 2)} [86] __VERIFIER_assertENTRY-->L13: 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] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:53,848 INFO L290 TraceCheckUtils]: 26: Hoare triple {4312#(<= ~counter~0 2)} [90] L13-->L13-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[] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:53,848 INFO L290 TraceCheckUtils]: 27: Hoare triple {4312#(<= ~counter~0 2)} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:53,849 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4312#(<= ~counter~0 2)} {4312#(<= ~counter~0 2)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:53,849 INFO L290 TraceCheckUtils]: 29: Hoare triple {4312#(<= ~counter~0 2)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:53,849 INFO L290 TraceCheckUtils]: 30: Hoare triple {4312#(<= ~counter~0 2)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:53,850 INFO L290 TraceCheckUtils]: 31: Hoare triple {4312#(<= ~counter~0 2)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:53,850 INFO L290 TraceCheckUtils]: 32: Hoare triple {4312#(<= ~counter~0 2)} [78] L33-3-->L33-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] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:53,850 INFO L290 TraceCheckUtils]: 33: Hoare triple {4343#(<= ~counter~0 3)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:53,851 INFO L272 TraceCheckUtils]: 34: Hoare triple {4343#(<= ~counter~0 3)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:53,851 INFO L290 TraceCheckUtils]: 35: Hoare triple {4343#(<= ~counter~0 3)} [86] __VERIFIER_assertENTRY-->L13: 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] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:53,852 INFO L290 TraceCheckUtils]: 36: Hoare triple {4343#(<= ~counter~0 3)} [90] L13-->L13-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[] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:53,852 INFO L290 TraceCheckUtils]: 37: Hoare triple {4343#(<= ~counter~0 3)} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:53,852 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4343#(<= ~counter~0 3)} {4343#(<= ~counter~0 3)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:53,853 INFO L290 TraceCheckUtils]: 39: Hoare triple {4343#(<= ~counter~0 3)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:53,853 INFO L290 TraceCheckUtils]: 40: Hoare triple {4343#(<= ~counter~0 3)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:53,853 INFO L290 TraceCheckUtils]: 41: Hoare triple {4343#(<= ~counter~0 3)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:53,854 INFO L290 TraceCheckUtils]: 42: Hoare triple {4343#(<= ~counter~0 3)} [78] L33-3-->L33-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] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:53,854 INFO L290 TraceCheckUtils]: 43: Hoare triple {4374#(<= ~counter~0 4)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:53,854 INFO L272 TraceCheckUtils]: 44: Hoare triple {4374#(<= ~counter~0 4)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:53,855 INFO L290 TraceCheckUtils]: 45: Hoare triple {4374#(<= ~counter~0 4)} [86] __VERIFIER_assertENTRY-->L13: 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] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:53,855 INFO L290 TraceCheckUtils]: 46: Hoare triple {4374#(<= ~counter~0 4)} [90] L13-->L13-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[] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:53,855 INFO L290 TraceCheckUtils]: 47: Hoare triple {4374#(<= ~counter~0 4)} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:53,856 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {4374#(<= ~counter~0 4)} {4374#(<= ~counter~0 4)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:53,856 INFO L290 TraceCheckUtils]: 49: Hoare triple {4374#(<= ~counter~0 4)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:53,856 INFO L290 TraceCheckUtils]: 50: Hoare triple {4374#(<= ~counter~0 4)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:53,862 INFO L290 TraceCheckUtils]: 51: Hoare triple {4374#(<= ~counter~0 4)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:53,863 INFO L290 TraceCheckUtils]: 52: Hoare triple {4374#(<= ~counter~0 4)} [78] L33-3-->L33-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] {4405#(<= |main_#t~post6| 4)} is VALID [2022-04-28 01:30:53,863 INFO L290 TraceCheckUtils]: 53: Hoare triple {4405#(<= |main_#t~post6| 4)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4240#false} is VALID [2022-04-28 01:30:53,863 INFO L272 TraceCheckUtils]: 54: Hoare triple {4240#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {4240#false} is VALID [2022-04-28 01:30:53,863 INFO L290 TraceCheckUtils]: 55: Hoare triple {4240#false} [86] __VERIFIER_assertENTRY-->L13: 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] {4240#false} is VALID [2022-04-28 01:30:53,863 INFO L290 TraceCheckUtils]: 56: Hoare triple {4240#false} [89] L13-->L14: 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[] {4240#false} is VALID [2022-04-28 01:30:53,863 INFO L290 TraceCheckUtils]: 57: Hoare triple {4240#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4240#false} is VALID [2022-04-28 01:30:53,863 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 8 proven. 68 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 01:30:53,863 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 01:30:54,093 INFO L290 TraceCheckUtils]: 57: Hoare triple {4240#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4240#false} is VALID [2022-04-28 01:30:54,093 INFO L290 TraceCheckUtils]: 56: Hoare triple {4240#false} [89] L13-->L14: 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[] {4240#false} is VALID [2022-04-28 01:30:54,093 INFO L290 TraceCheckUtils]: 55: Hoare triple {4240#false} [86] __VERIFIER_assertENTRY-->L13: 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] {4240#false} is VALID [2022-04-28 01:30:54,093 INFO L272 TraceCheckUtils]: 54: Hoare triple {4240#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {4240#false} is VALID [2022-04-28 01:30:54,094 INFO L290 TraceCheckUtils]: 53: Hoare triple {4405#(<= |main_#t~post6| 4)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4240#false} is VALID [2022-04-28 01:30:54,094 INFO L290 TraceCheckUtils]: 52: Hoare triple {4374#(<= ~counter~0 4)} [78] L33-3-->L33-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] {4405#(<= |main_#t~post6| 4)} is VALID [2022-04-28 01:30:54,094 INFO L290 TraceCheckUtils]: 51: Hoare triple {4374#(<= ~counter~0 4)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:54,094 INFO L290 TraceCheckUtils]: 50: Hoare triple {4374#(<= ~counter~0 4)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:54,095 INFO L290 TraceCheckUtils]: 49: Hoare triple {4374#(<= ~counter~0 4)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:54,095 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {4239#true} {4374#(<= ~counter~0 4)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:54,095 INFO L290 TraceCheckUtils]: 47: Hoare triple {4239#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4239#true} is VALID [2022-04-28 01:30:54,095 INFO L290 TraceCheckUtils]: 46: Hoare triple {4239#true} [90] L13-->L13-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[] {4239#true} is VALID [2022-04-28 01:30:54,095 INFO L290 TraceCheckUtils]: 45: Hoare triple {4239#true} [86] __VERIFIER_assertENTRY-->L13: 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] {4239#true} is VALID [2022-04-28 01:30:54,096 INFO L272 TraceCheckUtils]: 44: Hoare triple {4374#(<= ~counter~0 4)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4239#true} is VALID [2022-04-28 01:30:54,096 INFO L290 TraceCheckUtils]: 43: Hoare triple {4374#(<= ~counter~0 4)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:54,096 INFO L290 TraceCheckUtils]: 42: Hoare triple {4343#(<= ~counter~0 3)} [78] L33-3-->L33-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] {4374#(<= ~counter~0 4)} is VALID [2022-04-28 01:30:54,097 INFO L290 TraceCheckUtils]: 41: Hoare triple {4343#(<= ~counter~0 3)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:54,097 INFO L290 TraceCheckUtils]: 40: Hoare triple {4343#(<= ~counter~0 3)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:54,098 INFO L290 TraceCheckUtils]: 39: Hoare triple {4343#(<= ~counter~0 3)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:54,098 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4239#true} {4343#(<= ~counter~0 3)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:54,098 INFO L290 TraceCheckUtils]: 37: Hoare triple {4239#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4239#true} is VALID [2022-04-28 01:30:54,098 INFO L290 TraceCheckUtils]: 36: Hoare triple {4239#true} [90] L13-->L13-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[] {4239#true} is VALID [2022-04-28 01:30:54,098 INFO L290 TraceCheckUtils]: 35: Hoare triple {4239#true} [86] __VERIFIER_assertENTRY-->L13: 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] {4239#true} is VALID [2022-04-28 01:30:54,098 INFO L272 TraceCheckUtils]: 34: Hoare triple {4343#(<= ~counter~0 3)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4239#true} is VALID [2022-04-28 01:30:54,099 INFO L290 TraceCheckUtils]: 33: Hoare triple {4343#(<= ~counter~0 3)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:54,099 INFO L290 TraceCheckUtils]: 32: Hoare triple {4312#(<= ~counter~0 2)} [78] L33-3-->L33-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] {4343#(<= ~counter~0 3)} is VALID [2022-04-28 01:30:54,099 INFO L290 TraceCheckUtils]: 31: Hoare triple {4312#(<= ~counter~0 2)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:54,100 INFO L290 TraceCheckUtils]: 30: Hoare triple {4312#(<= ~counter~0 2)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:54,100 INFO L290 TraceCheckUtils]: 29: Hoare triple {4312#(<= ~counter~0 2)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:54,100 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4239#true} {4312#(<= ~counter~0 2)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:54,100 INFO L290 TraceCheckUtils]: 27: Hoare triple {4239#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4239#true} is VALID [2022-04-28 01:30:54,101 INFO L290 TraceCheckUtils]: 26: Hoare triple {4239#true} [90] L13-->L13-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[] {4239#true} is VALID [2022-04-28 01:30:54,101 INFO L290 TraceCheckUtils]: 25: Hoare triple {4239#true} [86] __VERIFIER_assertENTRY-->L13: 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] {4239#true} is VALID [2022-04-28 01:30:54,101 INFO L272 TraceCheckUtils]: 24: Hoare triple {4312#(<= ~counter~0 2)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4239#true} is VALID [2022-04-28 01:30:54,101 INFO L290 TraceCheckUtils]: 23: Hoare triple {4312#(<= ~counter~0 2)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:54,101 INFO L290 TraceCheckUtils]: 22: Hoare triple {4281#(<= ~counter~0 1)} [78] L33-3-->L33-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] {4312#(<= ~counter~0 2)} is VALID [2022-04-28 01:30:54,102 INFO L290 TraceCheckUtils]: 21: Hoare triple {4281#(<= ~counter~0 1)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:54,102 INFO L290 TraceCheckUtils]: 20: Hoare triple {4281#(<= ~counter~0 1)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:54,102 INFO L290 TraceCheckUtils]: 19: Hoare triple {4281#(<= ~counter~0 1)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:54,103 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4239#true} {4281#(<= ~counter~0 1)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:54,103 INFO L290 TraceCheckUtils]: 17: Hoare triple {4239#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4239#true} is VALID [2022-04-28 01:30:54,103 INFO L290 TraceCheckUtils]: 16: Hoare triple {4239#true} [90] L13-->L13-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[] {4239#true} is VALID [2022-04-28 01:30:54,103 INFO L290 TraceCheckUtils]: 15: Hoare triple {4239#true} [86] __VERIFIER_assertENTRY-->L13: 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] {4239#true} is VALID [2022-04-28 01:30:54,103 INFO L272 TraceCheckUtils]: 14: Hoare triple {4281#(<= ~counter~0 1)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4239#true} is VALID [2022-04-28 01:30:54,103 INFO L290 TraceCheckUtils]: 13: Hoare triple {4281#(<= ~counter~0 1)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:54,103 INFO L290 TraceCheckUtils]: 12: Hoare triple {4247#(<= ~counter~0 0)} [78] L33-3-->L33-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] {4281#(<= ~counter~0 1)} is VALID [2022-04-28 01:30:54,104 INFO L290 TraceCheckUtils]: 11: Hoare triple {4247#(<= ~counter~0 0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:54,104 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4239#true} {4247#(<= ~counter~0 0)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:54,104 INFO L290 TraceCheckUtils]: 9: Hoare triple {4239#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4239#true} is VALID [2022-04-28 01:30:54,104 INFO L290 TraceCheckUtils]: 8: Hoare triple {4239#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {4239#true} is VALID [2022-04-28 01:30:54,104 INFO L290 TraceCheckUtils]: 7: Hoare triple {4239#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {4239#true} is VALID [2022-04-28 01:30:54,104 INFO L272 TraceCheckUtils]: 6: Hoare triple {4247#(<= ~counter~0 0)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {4239#true} is VALID [2022-04-28 01:30:54,105 INFO L290 TraceCheckUtils]: 5: Hoare triple {4247#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:54,105 INFO L272 TraceCheckUtils]: 4: Hoare triple {4247#(<= ~counter~0 0)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:54,105 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4247#(<= ~counter~0 0)} {4239#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:54,105 INFO L290 TraceCheckUtils]: 2: Hoare triple {4247#(<= ~counter~0 0)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:54,106 INFO L290 TraceCheckUtils]: 1: Hoare triple {4239#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {4247#(<= ~counter~0 0)} is VALID [2022-04-28 01:30:54,106 INFO L272 TraceCheckUtils]: 0: Hoare triple {4239#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4239#true} is VALID [2022-04-28 01:30:54,106 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 8 proven. 44 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 01:30:54,106 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 01:30:54,106 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [118969740] [2022-04-28 01:30:54,106 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 01:30:54,106 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [876352506] [2022-04-28 01:30:54,106 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [876352506] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 01:30:54,106 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 01:30:54,106 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-28 01:30:54,107 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [431256335] [2022-04-28 01:30:54,107 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 01:30:54,107 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) Word has length 58 [2022-04-28 01:30:54,108 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 01:30:54,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-28 01:30:54,153 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:30:54,153 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 01:30:54,153 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 01:30:54,153 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 01:30:54,153 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2022-04-28 01:30:54,154 INFO L87 Difference]: Start difference. First operand 116 states and 129 transitions. Second operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-28 01:30:54,351 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:30:54,351 INFO L93 Difference]: Finished difference Result 146 states and 163 transitions. [2022-04-28 01:30:54,351 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 01:30:54,352 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) Word has length 58 [2022-04-28 01:30:54,352 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 01:30:54,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-28 01:30:54,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 80 transitions. [2022-04-28 01:30:54,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-28 01:30:54,357 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 80 transitions. [2022-04-28 01:30:54,357 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 80 transitions. [2022-04-28 01:30:54,406 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 01:30:54,408 INFO L225 Difference]: With dead ends: 146 [2022-04-28 01:30:54,408 INFO L226 Difference]: Without dead ends: 139 [2022-04-28 01:30:54,408 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 108 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-28 01:30:54,409 INFO L413 NwaCegarLoop]: 29 mSDtfsCounter, 17 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 111 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 01:30:54,409 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 111 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 01:30:54,409 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 139 states. [2022-04-28 01:30:54,464 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 139 to 139. [2022-04-28 01:30:54,464 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 01:30:54,464 INFO L82 GeneralOperation]: Start isEquivalent. First operand 139 states. Second operand has 139 states, 108 states have (on average 1.1296296296296295) internal successors, (122), 112 states have internal predecessors, (122), 17 states have call successors, (17), 14 states have call predecessors, (17), 13 states have return successors, (15), 12 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 01:30:54,465 INFO L74 IsIncluded]: Start isIncluded. First operand 139 states. Second operand has 139 states, 108 states have (on average 1.1296296296296295) internal successors, (122), 112 states have internal predecessors, (122), 17 states have call successors, (17), 14 states have call predecessors, (17), 13 states have return successors, (15), 12 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 01:30:54,465 INFO L87 Difference]: Start difference. First operand 139 states. Second operand has 139 states, 108 states have (on average 1.1296296296296295) internal successors, (122), 112 states have internal predecessors, (122), 17 states have call successors, (17), 14 states have call predecessors, (17), 13 states have return successors, (15), 12 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 01:30:54,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:30:54,467 INFO L93 Difference]: Finished difference Result 139 states and 154 transitions. [2022-04-28 01:30:54,468 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 154 transitions. [2022-04-28 01:30:54,468 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:30:54,468 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:30:54,468 INFO L74 IsIncluded]: Start isIncluded. First operand has 139 states, 108 states have (on average 1.1296296296296295) internal successors, (122), 112 states have internal predecessors, (122), 17 states have call successors, (17), 14 states have call predecessors, (17), 13 states have return successors, (15), 12 states have call predecessors, (15), 15 states have call successors, (15) Second operand 139 states. [2022-04-28 01:30:54,468 INFO L87 Difference]: Start difference. First operand has 139 states, 108 states have (on average 1.1296296296296295) internal successors, (122), 112 states have internal predecessors, (122), 17 states have call successors, (17), 14 states have call predecessors, (17), 13 states have return successors, (15), 12 states have call predecessors, (15), 15 states have call successors, (15) Second operand 139 states. [2022-04-28 01:30:54,470 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 01:30:54,470 INFO L93 Difference]: Finished difference Result 139 states and 154 transitions. [2022-04-28 01:30:54,470 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 154 transitions. [2022-04-28 01:30:54,471 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 01:30:54,471 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 01:30:54,471 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 01:30:54,471 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 01:30:54,472 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 139 states, 108 states have (on average 1.1296296296296295) internal successors, (122), 112 states have internal predecessors, (122), 17 states have call successors, (17), 14 states have call predecessors, (17), 13 states have return successors, (15), 12 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 01:30:54,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 139 states to 139 states and 154 transitions. [2022-04-28 01:30:54,473 INFO L78 Accepts]: Start accepts. Automaton has 139 states and 154 transitions. Word has length 58 [2022-04-28 01:30:54,473 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 01:30:54,474 INFO L495 AbstractCegarLoop]: Abstraction has 139 states and 154 transitions. [2022-04-28 01:30:54,474 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-28 01:30:54,474 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 154 transitions. [2022-04-28 01:30:54,474 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 01:30:54,474 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 01:30:54,474 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 5, 5, 4, 4, 4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 01:30:54,493 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 01:30:54,691 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-28 01:30:54,691 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 01:30:54,692 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 01:30:54,692 INFO L85 PathProgramCache]: Analyzing trace with hash -339082250, now seen corresponding path program 2 times [2022-04-28 01:30:54,692 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 01:30:54,692 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [327058656] [2022-04-28 01:30:54,692 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 01:30:54,692 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 01:30:54,711 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 01:30:54,711 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [156657476] [2022-04-28 01:30:54,711 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 01:30:54,711 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 01:30:54,711 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 01:30:54,712 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 01:30:54,712 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 01:30:54,758 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 01:30:54,758 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 01:30:54,759 INFO L263 TraceCheckSpWp]: Trace formula consists of 169 conjuncts, 41 conjunts are in the unsatisfiable core [2022-04-28 01:30:54,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 01:30:54,783 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 01:31:07,470 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 01:31:42,782 INFO L272 TraceCheckUtils]: 0: Hoare triple {5261#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5261#true} is VALID [2022-04-28 01:31:42,783 INFO L290 TraceCheckUtils]: 1: Hoare triple {5261#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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_#length_1| 2) 13) (= (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] {5261#true} is VALID [2022-04-28 01:31:42,783 INFO L290 TraceCheckUtils]: 2: Hoare triple {5261#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5261#true} is VALID [2022-04-28 01:31:42,783 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5261#true} {5261#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5261#true} is VALID [2022-04-28 01:31:42,783 INFO L272 TraceCheckUtils]: 4: Hoare triple {5261#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5261#true} is VALID [2022-04-28 01:31:42,783 INFO L290 TraceCheckUtils]: 5: Hoare triple {5261#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5261#true} is VALID [2022-04-28 01:31:42,783 INFO L272 TraceCheckUtils]: 6: Hoare triple {5261#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {5261#true} is VALID [2022-04-28 01:31:42,783 INFO L290 TraceCheckUtils]: 7: Hoare triple {5261#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {5287#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 01:31:42,784 INFO L290 TraceCheckUtils]: 8: Hoare triple {5287#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {5291#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:31:42,784 INFO L290 TraceCheckUtils]: 9: Hoare triple {5291#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5291#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 01:31:42,784 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5291#(not (= |assume_abort_if_not_#in~cond| 0))} {5261#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {5298#(<= 1 main_~b~0)} is VALID [2022-04-28 01:31:42,785 INFO L290 TraceCheckUtils]: 11: Hoare triple {5298#(<= 1 main_~b~0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {5302#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:31:42,785 INFO L290 TraceCheckUtils]: 12: Hoare triple {5302#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-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] {5302#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:31:42,786 INFO L290 TraceCheckUtils]: 13: Hoare triple {5302#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5302#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:31:42,786 INFO L272 TraceCheckUtils]: 14: Hoare triple {5302#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5261#true} is VALID [2022-04-28 01:31:42,786 INFO L290 TraceCheckUtils]: 15: Hoare triple {5261#true} [86] __VERIFIER_assertENTRY-->L13: 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] {5261#true} is VALID [2022-04-28 01:31:42,786 INFO L290 TraceCheckUtils]: 16: Hoare triple {5261#true} [90] L13-->L13-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[] {5261#true} is VALID [2022-04-28 01:31:42,786 INFO L290 TraceCheckUtils]: 17: Hoare triple {5261#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5261#true} is VALID [2022-04-28 01:31:42,786 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5261#true} {5302#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5302#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:31:42,787 INFO L290 TraceCheckUtils]: 19: Hoare triple {5302#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {5302#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:31:42,788 INFO L290 TraceCheckUtils]: 20: Hoare triple {5302#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {5330#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= main_~b~0 (+ main_~y~0 1)) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 01:31:42,795 INFO L290 TraceCheckUtils]: 21: Hoare triple {5330#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= main_~b~0 (+ main_~y~0 1)) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {5334#(and (= (* main_~a~0 2) main_~x~0) (exists ((aux_div_v_main_~y~0_52_28 Int) (aux_mod_v_main_~y~0_52_28 Int)) (and (< aux_mod_v_main_~y~0_52_28 2) (<= 1 aux_mod_v_main_~y~0_52_28) (<= main_~b~0 (+ (* aux_div_v_main_~y~0_52_28 2) aux_mod_v_main_~y~0_52_28)) (= main_~y~0 (div (+ (- 1) (* aux_div_v_main_~y~0_52_28 2) aux_mod_v_main_~y~0_52_28) 2)))) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,797 INFO L290 TraceCheckUtils]: 22: Hoare triple {5334#(and (= (* main_~a~0 2) main_~x~0) (exists ((aux_div_v_main_~y~0_52_28 Int) (aux_mod_v_main_~y~0_52_28 Int)) (and (< aux_mod_v_main_~y~0_52_28 2) (<= 1 aux_mod_v_main_~y~0_52_28) (<= main_~b~0 (+ (* aux_div_v_main_~y~0_52_28 2) aux_mod_v_main_~y~0_52_28)) (= main_~y~0 (div (+ (- 1) (* aux_div_v_main_~y~0_52_28 2) aux_mod_v_main_~y~0_52_28) 2)))) (<= 1 main_~b~0))} [78] L33-3-->L33-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] {5338#(and (= (* main_~a~0 2) main_~x~0) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ main_~y~0 1)) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,797 INFO L290 TraceCheckUtils]: 23: Hoare triple {5338#(and (= (* main_~a~0 2) main_~x~0) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ main_~y~0 1)) (<= 1 main_~b~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5338#(and (= (* main_~a~0 2) main_~x~0) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ main_~y~0 1)) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,797 INFO L272 TraceCheckUtils]: 24: Hoare triple {5338#(and (= (* main_~a~0 2) main_~x~0) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ main_~y~0 1)) (<= 1 main_~b~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5261#true} is VALID [2022-04-28 01:31:42,797 INFO L290 TraceCheckUtils]: 25: Hoare triple {5261#true} [86] __VERIFIER_assertENTRY-->L13: 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] {5261#true} is VALID [2022-04-28 01:31:42,797 INFO L290 TraceCheckUtils]: 26: Hoare triple {5261#true} [90] L13-->L13-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[] {5261#true} is VALID [2022-04-28 01:31:42,797 INFO L290 TraceCheckUtils]: 27: Hoare triple {5261#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5261#true} is VALID [2022-04-28 01:31:42,798 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5261#true} {5338#(and (= (* main_~a~0 2) main_~x~0) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ main_~y~0 1)) (<= 1 main_~b~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5338#(and (= (* main_~a~0 2) main_~x~0) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ main_~y~0 1)) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,798 INFO L290 TraceCheckUtils]: 29: Hoare triple {5338#(and (= (* main_~a~0 2) main_~x~0) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ main_~y~0 1)) (<= 1 main_~b~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {5338#(and (= (* main_~a~0 2) main_~x~0) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ main_~y~0 1)) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,799 INFO L290 TraceCheckUtils]: 30: Hoare triple {5338#(and (= (* main_~a~0 2) main_~x~0) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ main_~y~0 1)) (<= 1 main_~b~0))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {5363#(and (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ main_~y~0 1)) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,801 INFO L290 TraceCheckUtils]: 31: Hoare triple {5363#(and (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ main_~y~0 1)) (<= 1 main_~b~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {5367#(and (= (* main_~a~0 4) main_~x~0) (exists ((aux_mod_v_main_~y~0_53_22 Int) (aux_div_v_main_~y~0_53_22 Int)) (and (<= 0 aux_mod_v_main_~y~0_53_22) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ aux_mod_v_main_~y~0_53_22 (* aux_div_v_main_~y~0_53_22 2) 1)) (< aux_mod_v_main_~y~0_53_22 2) (not (= aux_mod_v_main_~y~0_53_22 1)) (= (div (+ aux_mod_v_main_~y~0_53_22 (* aux_div_v_main_~y~0_53_22 2)) 2) main_~y~0))) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,802 INFO L290 TraceCheckUtils]: 32: Hoare triple {5367#(and (= (* main_~a~0 4) main_~x~0) (exists ((aux_mod_v_main_~y~0_53_22 Int) (aux_div_v_main_~y~0_53_22 Int)) (and (<= 0 aux_mod_v_main_~y~0_53_22) (< (div (+ (* (- 1) main_~b~0) 1) (- 2)) (+ aux_mod_v_main_~y~0_53_22 (* aux_div_v_main_~y~0_53_22 2) 1)) (< aux_mod_v_main_~y~0_53_22 2) (not (= aux_mod_v_main_~y~0_53_22 1)) (= (div (+ aux_mod_v_main_~y~0_53_22 (* aux_div_v_main_~y~0_53_22 2)) 2) main_~y~0))) (<= 1 main_~b~0))} [78] L33-3-->L33-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] {5371#(and (= (* main_~a~0 4) main_~x~0) (<= 1 main_~b~0) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:31:42,802 INFO L290 TraceCheckUtils]: 33: Hoare triple {5371#(and (= (* main_~a~0 4) main_~x~0) (<= 1 main_~b~0) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5371#(and (= (* main_~a~0 4) main_~x~0) (<= 1 main_~b~0) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:31:42,803 INFO L272 TraceCheckUtils]: 34: Hoare triple {5371#(and (= (* main_~a~0 4) main_~x~0) (<= 1 main_~b~0) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5261#true} is VALID [2022-04-28 01:31:42,803 INFO L290 TraceCheckUtils]: 35: Hoare triple {5261#true} [86] __VERIFIER_assertENTRY-->L13: 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] {5261#true} is VALID [2022-04-28 01:31:42,803 INFO L290 TraceCheckUtils]: 36: Hoare triple {5261#true} [90] L13-->L13-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[] {5261#true} is VALID [2022-04-28 01:31:42,803 INFO L290 TraceCheckUtils]: 37: Hoare triple {5261#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5261#true} is VALID [2022-04-28 01:31:42,803 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {5261#true} {5371#(and (= (* main_~a~0 4) main_~x~0) (<= 1 main_~b~0) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5371#(and (= (* main_~a~0 4) main_~x~0) (<= 1 main_~b~0) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:31:42,804 INFO L290 TraceCheckUtils]: 39: Hoare triple {5371#(and (= (* main_~a~0 4) main_~x~0) (<= 1 main_~b~0) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {5393#(and (not (= main_~y~0 0)) (= (* main_~a~0 4) main_~x~0) (<= 1 main_~b~0) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:31:42,805 INFO L290 TraceCheckUtils]: 40: Hoare triple {5393#(and (not (= main_~y~0 0)) (= (* main_~a~0 4) main_~x~0) (<= 1 main_~b~0) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {5397#(and (not (= main_~y~0 0)) (= (* main_~a~0 4) main_~x~0) (not (= (mod main_~y~0 2) 1)) (<= 1 main_~b~0) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-28 01:31:42,806 INFO L290 TraceCheckUtils]: 41: Hoare triple {5397#(and (not (= main_~y~0 0)) (= (* main_~a~0 4) main_~x~0) (not (= (mod main_~y~0 2) 1)) (<= 1 main_~b~0) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {5401#(and (= main_~x~0 (* main_~a~0 8)) (exists ((aux_mod_v_main_~y~0_54_22 Int) (aux_div_v_main_~y~0_54_22 Int)) (and (not (= aux_mod_v_main_~y~0_54_22 1)) (< aux_mod_v_main_~y~0_54_22 2) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ aux_mod_v_main_~y~0_54_22 (* aux_div_v_main_~y~0_54_22 2) 1)) (= main_~y~0 (div (+ aux_mod_v_main_~y~0_54_22 (* aux_div_v_main_~y~0_54_22 2)) 2)) (<= 0 aux_mod_v_main_~y~0_54_22) (not (= (+ aux_mod_v_main_~y~0_54_22 (* aux_div_v_main_~y~0_54_22 2)) 0)))) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,808 INFO L290 TraceCheckUtils]: 42: Hoare triple {5401#(and (= main_~x~0 (* main_~a~0 8)) (exists ((aux_mod_v_main_~y~0_54_22 Int) (aux_div_v_main_~y~0_54_22 Int)) (and (not (= aux_mod_v_main_~y~0_54_22 1)) (< aux_mod_v_main_~y~0_54_22 2) (< (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2)) (+ aux_mod_v_main_~y~0_54_22 (* aux_div_v_main_~y~0_54_22 2) 1)) (= main_~y~0 (div (+ aux_mod_v_main_~y~0_54_22 (* aux_div_v_main_~y~0_54_22 2)) 2)) (<= 0 aux_mod_v_main_~y~0_54_22) (not (= (+ aux_mod_v_main_~y~0_54_22 (* aux_div_v_main_~y~0_54_22 2)) 0)))) (<= 1 main_~b~0))} [78] L33-3-->L33-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] {5405#(and (= main_~x~0 (* main_~a~0 8)) (< (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,808 INFO L290 TraceCheckUtils]: 43: Hoare triple {5405#(and (= main_~x~0 (* main_~a~0 8)) (< (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5405#(and (= main_~x~0 (* main_~a~0 8)) (< (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,808 INFO L272 TraceCheckUtils]: 44: Hoare triple {5405#(and (= main_~x~0 (* main_~a~0 8)) (< (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5261#true} is VALID [2022-04-28 01:31:42,809 INFO L290 TraceCheckUtils]: 45: Hoare triple {5261#true} [86] __VERIFIER_assertENTRY-->L13: 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] {5415#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:31:42,809 INFO L290 TraceCheckUtils]: 46: Hoare triple {5415#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [90] L13-->L13-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[] {5419#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:31:42,809 INFO L290 TraceCheckUtils]: 47: Hoare triple {5419#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5419#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 01:31:42,810 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {5419#(not (= |__VERIFIER_assert_#in~cond| 0))} {5405#(and (= main_~x~0 (* main_~a~0 8)) (< (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5426#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~x~0 (* main_~a~0 8)) (< (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,810 INFO L290 TraceCheckUtils]: 49: Hoare triple {5426#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~x~0 (* main_~a~0 8)) (< (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {5426#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~x~0 (* main_~a~0 8)) (< (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,811 INFO L290 TraceCheckUtils]: 50: Hoare triple {5426#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~x~0 (* main_~a~0 8)) (< (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {5433#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= main_~x~0 (* main_~a~0 8)) (< (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,822 INFO L290 TraceCheckUtils]: 51: Hoare triple {5433#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= main_~x~0 (* main_~a~0 8)) (< (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {5437#(and (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 8) (* 2 (* main_~a~0 main_~y~0))) (= (* main_~a~0 16) main_~x~0) (= (mod (+ (* 7 main_~z~0) (* (- 16) main_~a~0 main_~y~0) (* main_~b~0 main_~a~0)) 8) 0) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,822 INFO L290 TraceCheckUtils]: 52: Hoare triple {5437#(and (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 8) (* 2 (* main_~a~0 main_~y~0))) (= (* main_~a~0 16) main_~x~0) (= (mod (+ (* 7 main_~z~0) (* (- 16) main_~a~0 main_~y~0) (* main_~b~0 main_~a~0)) 8) 0) (< 0 main_~y~0) (<= 1 main_~b~0))} [78] L33-3-->L33-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] {5437#(and (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 8) (* 2 (* main_~a~0 main_~y~0))) (= (* main_~a~0 16) main_~x~0) (= (mod (+ (* 7 main_~z~0) (* (- 16) main_~a~0 main_~y~0) (* main_~b~0 main_~a~0)) 8) 0) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,823 INFO L290 TraceCheckUtils]: 53: Hoare triple {5437#(and (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 8) (* 2 (* main_~a~0 main_~y~0))) (= (* main_~a~0 16) main_~x~0) (= (mod (+ (* 7 main_~z~0) (* (- 16) main_~a~0 main_~y~0) (* main_~b~0 main_~a~0)) 8) 0) (< 0 main_~y~0) (<= 1 main_~b~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5437#(and (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 8) (* 2 (* main_~a~0 main_~y~0))) (= (* main_~a~0 16) main_~x~0) (= (mod (+ (* 7 main_~z~0) (* (- 16) main_~a~0 main_~y~0) (* main_~b~0 main_~a~0)) 8) 0) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-28 01:31:42,825 INFO L272 TraceCheckUtils]: 54: Hoare triple {5437#(and (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ (* (- 1) main_~b~0) 1) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 8) (* 2 (* main_~a~0 main_~y~0))) (= (* main_~a~0 16) main_~x~0) (= (mod (+ (* 7 main_~z~0) (* (- 16) main_~a~0 main_~y~0) (* main_~b~0 main_~a~0)) 8) 0) (< 0 main_~y~0) (<= 1 main_~b~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5447#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 01:31:42,826 INFO L290 TraceCheckUtils]: 55: Hoare triple {5447#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: 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] {5451#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 01:31:42,826 INFO L290 TraceCheckUtils]: 56: Hoare triple {5451#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: 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[] {5262#false} is VALID [2022-04-28 01:31:42,826 INFO L290 TraceCheckUtils]: 57: Hoare triple {5262#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5262#false} is VALID [2022-04-28 01:31:42,826 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 16 proven. 49 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 01:31:42,827 INFO L328 TraceCheckSpWp]: Computing backward predicates...