/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/prodbin-ll.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 22:46:22,207 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 22:46:22,209 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 22:46:22,235 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 22:46:22,235 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 22:46:22,236 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 22:46:22,240 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 22:46:22,243 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 22:46:22,245 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 22:46:22,248 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 22:46:22,249 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 22:46:22,250 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 22:46:22,250 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 22:46:22,252 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 22:46:22,253 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 22:46:22,255 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 22:46:22,255 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 22:46:22,255 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 22:46:22,257 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 22:46:22,261 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 22:46:22,262 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 22:46:22,263 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 22:46:22,263 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 22:46:22,264 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 22:46:22,265 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 22:46:22,270 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 22:46:22,270 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 22:46:22,270 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 22:46:22,271 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 22:46:22,271 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 22:46:22,272 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 22:46:22,272 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 22:46:22,273 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 22:46:22,274 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 22:46:22,274 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 22:46:22,275 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 22:46:22,275 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 22:46:22,275 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 22:46:22,275 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 22:46:22,276 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 22:46:22,276 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 22:46:22,277 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 22:46:22,278 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-27 22:46:22,299 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 22:46:22,299 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 22:46:22,300 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 22:46:22,300 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 22:46:22,300 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 22:46:22,301 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 22:46:22,301 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 22:46:22,301 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 22:46:22,301 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 22:46:22,301 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 22:46:22,302 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 22:46:22,302 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 22:46:22,302 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 22:46:22,302 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 22:46:22,302 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 22:46:22,302 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 22:46:22,302 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 22:46:22,302 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 22:46:22,302 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 22:46:22,303 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 22:46:22,303 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 22:46:22,303 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 22:46:22,303 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 22:46:22,303 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 22:46:22,303 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 22:46:22,303 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 22:46:22,303 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-27 22:46:22,303 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-27 22:46:22,304 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-27 22:46:22,305 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-27 22:46:22,461 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 22:46:22,476 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 22:46:22,478 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 22:46:22,478 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 22:46:22,479 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 22:46:22,480 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench/prodbin-ll.c [2022-04-27 22:46:22,518 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e4c7106a8/3b9e81ef05c04a78a9908f4a5bc13abc/FLAGf34f8538a [2022-04-27 22:46:22,867 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 22:46:22,868 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench/prodbin-ll.c [2022-04-27 22:46:22,871 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e4c7106a8/3b9e81ef05c04a78a9908f4a5bc13abc/FLAGf34f8538a [2022-04-27 22:46:22,879 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e4c7106a8/3b9e81ef05c04a78a9908f4a5bc13abc [2022-04-27 22:46:22,880 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 22:46:22,881 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-27 22:46:22,888 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 22:46:22,888 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 22:46:22,890 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 22:46:22,891 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 10:46:22" (1/1) ... [2022-04-27 22:46:22,892 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@67ab84b7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:46:22, skipping insertion in model container [2022-04-27 22:46:22,892 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 10:46:22" (1/1) ... [2022-04-27 22:46:22,898 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 22:46:22,907 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 22:46:23,037 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/prodbin-ll.c[537,550] [2022-04-27 22:46:23,047 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 22:46:23,059 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 22:46:23,067 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/prodbin-ll.c[537,550] [2022-04-27 22:46:23,070 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 22:46:23,079 INFO L208 MainTranslator]: Completed translation [2022-04-27 22:46:23,079 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:46:23 WrapperNode [2022-04-27 22:46:23,080 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 22:46:23,081 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 22:46:23,082 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 22:46:23,082 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 22:46:23,088 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:46:23" (1/1) ... [2022-04-27 22:46:23,089 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:46:23" (1/1) ... [2022-04-27 22:46:23,093 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:46:23" (1/1) ... [2022-04-27 22:46:23,093 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:46:23" (1/1) ... [2022-04-27 22:46:23,103 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:46:23" (1/1) ... [2022-04-27 22:46:23,109 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:46:23" (1/1) ... [2022-04-27 22:46:23,109 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:46:23" (1/1) ... [2022-04-27 22:46:23,114 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 22:46:23,115 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 22:46:23,115 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 22:46:23,115 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 22:46:23,116 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:46:23" (1/1) ... [2022-04-27 22:46:23,130 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 22:46:23,139 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:46:23,155 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-27 22:46:23,162 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-27 22:46:23,182 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 22:46:23,182 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 22:46:23,182 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 22:46:23,182 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 22:46:23,182 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 22:46:23,182 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 22:46:23,182 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 22:46:23,182 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 22:46:23,183 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 22:46:23,226 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 22:46:23,227 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 22:46:23,318 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 22:46:23,322 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 22:46:23,323 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 22:46:23,324 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:46:23 BoogieIcfgContainer [2022-04-27 22:46:23,324 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 22:46:23,324 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-27 22:46:23,325 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-27 22:46:23,325 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-27 22:46:23,327 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:46:23" (1/1) ... [2022-04-27 22:46:23,329 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-27 22:46:23,354 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 10:46:23 BasicIcfg [2022-04-27 22:46:23,354 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-27 22:46:23,355 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 22:46:23,355 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 22:46:23,359 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 22:46:23,359 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 10:46:22" (1/4) ... [2022-04-27 22:46:23,360 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5e36ec4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 10:46:23, skipping insertion in model container [2022-04-27 22:46:23,360 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:46:23" (2/4) ... [2022-04-27 22:46:23,360 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5e36ec4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 10:46:23, skipping insertion in model container [2022-04-27 22:46:23,360 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:46:23" (3/4) ... [2022-04-27 22:46:23,360 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5e36ec4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 10:46:23, skipping insertion in model container [2022-04-27 22:46:23,360 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 10:46:23" (4/4) ... [2022-04-27 22:46:23,361 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll.cqvasr [2022-04-27 22:46:23,374 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 22:46:23,374 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 22:46:23,407 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 22:46:23,424 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@4ad8c92, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@66943203 [2022-04-27 22:46:23,424 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 22:46:23,443 INFO L276 IsEmpty]: Start isEmpty. Operand has 29 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 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-27 22:46:23,447 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-27 22:46:23,448 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:46:23,448 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:46:23,448 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:46:23,451 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:46:23,452 INFO L85 PathProgramCache]: Analyzing trace with hash -771267128, now seen corresponding path program 1 times [2022-04-27 22:46:23,457 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:46:23,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [919304420] [2022-04-27 22:46:23,458 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:46:23,458 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:46:23,531 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:46:23,577 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:46:23,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:46:23,598 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {32#true} is VALID [2022-04-27 22:46:23,599 INFO L290 TraceCheckUtils]: 1: Hoare triple {32#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-27 22:46:23,599 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {32#true} {32#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-27 22:46:23,600 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 22:46:23,601 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:46:23,605 INFO L290 TraceCheckUtils]: 0: Hoare triple {32#true} [75] 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] {32#true} is VALID [2022-04-27 22:46:23,606 INFO L290 TraceCheckUtils]: 1: Hoare triple {32#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[] {32#true} is VALID [2022-04-27 22:46:23,606 INFO L290 TraceCheckUtils]: 2: Hoare triple {32#true} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-27 22:46:23,606 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32#true} {32#true} [98] assume_abort_if_notEXIT-->L26-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] {32#true} is VALID [2022-04-27 22:46:23,607 INFO L272 TraceCheckUtils]: 0: Hoare triple {32#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:46:23,607 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {32#true} is VALID [2022-04-27 22:46:23,608 INFO L290 TraceCheckUtils]: 2: Hoare triple {32#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-27 22:46:23,608 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32#true} {32#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-27 22:46:23,608 INFO L272 TraceCheckUtils]: 4: Hoare triple {32#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-27 22:46:23,608 INFO L290 TraceCheckUtils]: 5: Hoare triple {32#true} [71] mainENTRY-->L26: 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] {32#true} is VALID [2022-04-27 22:46:23,609 INFO L272 TraceCheckUtils]: 6: Hoare triple {32#true} [73] L26-->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] {32#true} is VALID [2022-04-27 22:46:23,609 INFO L290 TraceCheckUtils]: 7: Hoare triple {32#true} [75] 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] {32#true} is VALID [2022-04-27 22:46:23,609 INFO L290 TraceCheckUtils]: 8: Hoare triple {32#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[] {32#true} is VALID [2022-04-27 22:46:23,609 INFO L290 TraceCheckUtils]: 9: Hoare triple {32#true} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-27 22:46:23,609 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32#true} {32#true} [98] assume_abort_if_notEXIT-->L26-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] {32#true} is VALID [2022-04-27 22:46:23,610 INFO L290 TraceCheckUtils]: 11: Hoare triple {32#true} [74] L26-1-->L32-2: 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] {32#true} is VALID [2022-04-27 22:46:23,610 INFO L290 TraceCheckUtils]: 12: Hoare triple {32#true} [76] L32-2-->L32-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {33#false} is VALID [2022-04-27 22:46:23,611 INFO L272 TraceCheckUtils]: 13: Hoare triple {33#false} [81] L32-3-->__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] {33#false} is VALID [2022-04-27 22:46:23,611 INFO L290 TraceCheckUtils]: 14: Hoare triple {33#false} [85] __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] {33#false} is VALID [2022-04-27 22:46:23,611 INFO L290 TraceCheckUtils]: 15: Hoare triple {33#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[] {33#false} is VALID [2022-04-27 22:46:23,611 INFO L290 TraceCheckUtils]: 16: Hoare triple {33#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#false} is VALID [2022-04-27 22:46:23,612 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-27 22:46:23,612 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:46:23,612 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [919304420] [2022-04-27 22:46:23,613 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [919304420] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:46:23,613 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:46:23,613 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 22:46:23,614 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1026256160] [2022-04-27 22:46:23,614 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:46:23,618 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-27 22:46:23,619 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:46:23,622 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-27 22:46:23,668 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-27 22:46:23,669 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 22:46:23,669 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:46:23,686 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 22:46:23,687 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 22:46:23,689 INFO L87 Difference]: Start difference. First operand has 29 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 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-27 22:46:23,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:46:23,800 INFO L93 Difference]: Finished difference Result 49 states and 62 transitions. [2022-04-27 22:46:23,800 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 22:46:23,801 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-27 22:46:23,801 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:46:23,805 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-27 22:46:23,816 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 62 transitions. [2022-04-27 22:46:23,817 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-27 22:46:23,821 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 62 transitions. [2022-04-27 22:46:23,821 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 62 transitions. [2022-04-27 22:46:23,900 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:46:23,908 INFO L225 Difference]: With dead ends: 49 [2022-04-27 22:46:23,908 INFO L226 Difference]: Without dead ends: 24 [2022-04-27 22:46:23,910 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-27 22:46:23,916 INFO L413 NwaCegarLoop]: 28 mSDtfsCounter, 18 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 5 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 31 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 5 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 22:46:23,919 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [21 Valid, 31 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 5 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 22:46:23,931 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states. [2022-04-27 22:46:23,944 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 24. [2022-04-27 22:46:23,944 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:46:23,946 INFO L82 GeneralOperation]: Start isEquivalent. First operand 24 states. Second operand has 24 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 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-27 22:46:23,947 INFO L74 IsIncluded]: Start isIncluded. First operand 24 states. Second operand has 24 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 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-27 22:46:23,948 INFO L87 Difference]: Start difference. First operand 24 states. Second operand has 24 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 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-27 22:46:23,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:46:23,957 INFO L93 Difference]: Finished difference Result 24 states and 26 transitions. [2022-04-27 22:46:23,958 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 26 transitions. [2022-04-27 22:46:23,958 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:46:23,958 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:46:23,959 INFO L74 IsIncluded]: Start isIncluded. First operand has 24 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 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 24 states. [2022-04-27 22:46:23,959 INFO L87 Difference]: Start difference. First operand has 24 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 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 24 states. [2022-04-27 22:46:23,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:46:23,961 INFO L93 Difference]: Finished difference Result 24 states and 26 transitions. [2022-04-27 22:46:23,962 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 26 transitions. [2022-04-27 22:46:23,962 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:46:23,962 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:46:23,963 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:46:23,963 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:46:23,963 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 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-27 22:46:23,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 26 transitions. [2022-04-27 22:46:23,966 INFO L78 Accepts]: Start accepts. Automaton has 24 states and 26 transitions. Word has length 17 [2022-04-27 22:46:23,966 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:46:23,967 INFO L495 AbstractCegarLoop]: Abstraction has 24 states and 26 transitions. [2022-04-27 22:46:23,967 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-27 22:46:23,967 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 26 transitions. [2022-04-27 22:46:23,968 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-27 22:46:23,968 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:46:23,968 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:46:23,969 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 22:46:23,969 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:46:23,970 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:46:23,970 INFO L85 PathProgramCache]: Analyzing trace with hash -769390295, now seen corresponding path program 1 times [2022-04-27 22:46:23,970 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:46:23,970 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1459222029] [2022-04-27 22:46:23,970 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:46:23,971 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:46:23,987 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:46:23,988 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [369495243] [2022-04-27 22:46:23,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:46:23,988 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:46:23,988 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:46:23,989 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-27 22:46:24,009 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-27 22:46:24,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:46:24,064 INFO L263 TraceCheckSpWp]: Trace formula consists of 72 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-27 22:46:24,087 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:46:24,090 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:46:24,243 INFO L272 TraceCheckUtils]: 0: Hoare triple {189#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {189#true} is VALID [2022-04-27 22:46:24,244 INFO L290 TraceCheckUtils]: 1: Hoare triple {189#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {189#true} is VALID [2022-04-27 22:46:24,244 INFO L290 TraceCheckUtils]: 2: Hoare triple {189#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {189#true} is VALID [2022-04-27 22:46:24,244 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {189#true} {189#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {189#true} is VALID [2022-04-27 22:46:24,245 INFO L272 TraceCheckUtils]: 4: Hoare triple {189#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {189#true} is VALID [2022-04-27 22:46:24,245 INFO L290 TraceCheckUtils]: 5: Hoare triple {189#true} [71] mainENTRY-->L26: 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] {189#true} is VALID [2022-04-27 22:46:24,245 INFO L272 TraceCheckUtils]: 6: Hoare triple {189#true} [73] L26-->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] {189#true} is VALID [2022-04-27 22:46:24,245 INFO L290 TraceCheckUtils]: 7: Hoare triple {189#true} [75] 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] {189#true} is VALID [2022-04-27 22:46:24,245 INFO L290 TraceCheckUtils]: 8: Hoare triple {189#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[] {189#true} is VALID [2022-04-27 22:46:24,246 INFO L290 TraceCheckUtils]: 9: Hoare triple {189#true} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {189#true} is VALID [2022-04-27 22:46:24,246 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {189#true} {189#true} [98] assume_abort_if_notEXIT-->L26-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] {189#true} is VALID [2022-04-27 22:46:24,246 INFO L290 TraceCheckUtils]: 11: Hoare triple {189#true} [74] L26-1-->L32-2: 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] {227#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:46:24,247 INFO L290 TraceCheckUtils]: 12: Hoare triple {227#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {227#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:46:24,248 INFO L272 TraceCheckUtils]: 13: Hoare triple {227#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [82] L33-->__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] {234#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:46:24,248 INFO L290 TraceCheckUtils]: 14: Hoare triple {234#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {238#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:46:24,248 INFO L290 TraceCheckUtils]: 15: Hoare triple {238#(<= 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[] {190#false} is VALID [2022-04-27 22:46:24,250 INFO L290 TraceCheckUtils]: 16: Hoare triple {190#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {190#false} is VALID [2022-04-27 22:46:24,250 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-27 22:46:24,250 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 22:46:24,251 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:46:24,251 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1459222029] [2022-04-27 22:46:24,251 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:46:24,254 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [369495243] [2022-04-27 22:46:24,254 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [369495243] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:46:24,255 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:46:24,255 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 22:46:24,255 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2052806191] [2022-04-27 22:46:24,256 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:46:24,257 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 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 17 [2022-04-27 22:46:24,257 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:46:24,258 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 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-27 22:46:24,270 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-27 22:46:24,270 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 22:46:24,270 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:46:24,271 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 22:46:24,271 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 22:46:24,272 INFO L87 Difference]: Start difference. First operand 24 states and 26 transitions. Second operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 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-27 22:46:24,385 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:46:24,385 INFO L93 Difference]: Finished difference Result 36 states and 40 transitions. [2022-04-27 22:46:24,385 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 22:46:24,385 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 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 17 [2022-04-27 22:46:24,386 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:46:24,386 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 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-27 22:46:24,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 40 transitions. [2022-04-27 22:46:24,390 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 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-27 22:46:24,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 40 transitions. [2022-04-27 22:46:24,393 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 40 transitions. [2022-04-27 22:46:24,418 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:46:24,420 INFO L225 Difference]: With dead ends: 36 [2022-04-27 22:46:24,420 INFO L226 Difference]: Without dead ends: 34 [2022-04-27 22:46:24,420 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 13 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-27 22:46:24,422 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 8 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 70 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-27 22:46:24,423 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 70 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 22:46:24,424 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-27 22:46:24,431 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 30. [2022-04-27 22:46:24,432 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:46:24,432 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 30 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 21 states have internal predecessors, (22), 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-27 22:46:24,432 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 30 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 21 states have internal predecessors, (22), 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-27 22:46:24,432 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 30 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 21 states have internal predecessors, (22), 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-27 22:46:24,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:46:24,437 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-04-27 22:46:24,437 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-27 22:46:24,438 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:46:24,438 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:46:24,439 INFO L74 IsIncluded]: Start isIncluded. First operand has 30 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 21 states have internal predecessors, (22), 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 34 states. [2022-04-27 22:46:24,440 INFO L87 Difference]: Start difference. First operand has 30 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 21 states have internal predecessors, (22), 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 34 states. [2022-04-27 22:46:24,443 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:46:24,443 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-04-27 22:46:24,443 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-27 22:46:24,444 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:46:24,444 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:46:24,444 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:46:24,444 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:46:24,444 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 21 states have internal predecessors, (22), 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-27 22:46:24,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 32 transitions. [2022-04-27 22:46:24,450 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 32 transitions. Word has length 17 [2022-04-27 22:46:24,450 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:46:24,450 INFO L495 AbstractCegarLoop]: Abstraction has 30 states and 32 transitions. [2022-04-27 22:46:24,450 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 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-27 22:46:24,450 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 32 transitions. [2022-04-27 22:46:24,451 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 22:46:24,452 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:46:24,452 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] [2022-04-27 22:46:24,470 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-27 22:46:24,670 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-27 22:46:24,670 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:46:24,671 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:46:24,671 INFO L85 PathProgramCache]: Analyzing trace with hash -1186133628, now seen corresponding path program 1 times [2022-04-27 22:46:24,671 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:46:24,671 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1217083229] [2022-04-27 22:46:24,671 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:46:24,672 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:46:24,687 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:46:24,687 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1715335817] [2022-04-27 22:46:24,687 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:46:24,687 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:46:24,688 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:46:24,689 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-27 22:46:24,702 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-27 22:46:24,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:46:24,743 INFO L263 TraceCheckSpWp]: Trace formula consists of 83 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 22:46:24,752 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:46:24,753 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:46:24,888 INFO L272 TraceCheckUtils]: 0: Hoare triple {407#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {407#true} is VALID [2022-04-27 22:46:24,888 INFO L290 TraceCheckUtils]: 1: Hoare triple {407#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {407#true} is VALID [2022-04-27 22:46:24,888 INFO L290 TraceCheckUtils]: 2: Hoare triple {407#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {407#true} is VALID [2022-04-27 22:46:24,889 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {407#true} {407#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {407#true} is VALID [2022-04-27 22:46:24,889 INFO L272 TraceCheckUtils]: 4: Hoare triple {407#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {407#true} is VALID [2022-04-27 22:46:24,889 INFO L290 TraceCheckUtils]: 5: Hoare triple {407#true} [71] mainENTRY-->L26: 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] {407#true} is VALID [2022-04-27 22:46:24,890 INFO L272 TraceCheckUtils]: 6: Hoare triple {407#true} [73] L26-->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] {407#true} is VALID [2022-04-27 22:46:24,890 INFO L290 TraceCheckUtils]: 7: Hoare triple {407#true} [75] 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] {433#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 22:46:24,895 INFO L290 TraceCheckUtils]: 8: Hoare triple {433#(= 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[] {437#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 22:46:24,897 INFO L290 TraceCheckUtils]: 9: Hoare triple {437#(not (= |assume_abort_if_not_#in~cond| 0))} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {437#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 22:46:24,898 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {437#(not (= |assume_abort_if_not_#in~cond| 0))} {407#true} [98] assume_abort_if_notEXIT-->L26-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] {444#(<= 1 main_~b~0)} is VALID [2022-04-27 22:46:24,899 INFO L290 TraceCheckUtils]: 11: Hoare triple {444#(<= 1 main_~b~0)} [74] L26-1-->L32-2: 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] {448#(<= 1 main_~y~0)} is VALID [2022-04-27 22:46:24,899 INFO L290 TraceCheckUtils]: 12: Hoare triple {448#(<= 1 main_~y~0)} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {448#(<= 1 main_~y~0)} is VALID [2022-04-27 22:46:24,899 INFO L272 TraceCheckUtils]: 13: Hoare triple {448#(<= 1 main_~y~0)} [82] L33-->__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] {407#true} is VALID [2022-04-27 22:46:24,900 INFO L290 TraceCheckUtils]: 14: Hoare triple {407#true} [85] __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] {407#true} is VALID [2022-04-27 22:46:24,900 INFO L290 TraceCheckUtils]: 15: Hoare triple {407#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[] {407#true} is VALID [2022-04-27 22:46:24,900 INFO L290 TraceCheckUtils]: 16: Hoare triple {407#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {407#true} is VALID [2022-04-27 22:46:24,901 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {407#true} {448#(<= 1 main_~y~0)} [100] __VERIFIER_assertEXIT-->L33-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] {448#(<= 1 main_~y~0)} is VALID [2022-04-27 22:46:24,901 INFO L290 TraceCheckUtils]: 18: Hoare triple {448#(<= 1 main_~y~0)} [86] L33-1-->L32-3: 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[] {408#false} is VALID [2022-04-27 22:46:24,902 INFO L272 TraceCheckUtils]: 19: Hoare triple {408#false} [81] L32-3-->__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] {408#false} is VALID [2022-04-27 22:46:24,902 INFO L290 TraceCheckUtils]: 20: Hoare triple {408#false} [85] __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] {408#false} is VALID [2022-04-27 22:46:24,902 INFO L290 TraceCheckUtils]: 21: Hoare triple {408#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[] {408#false} is VALID [2022-04-27 22:46:24,902 INFO L290 TraceCheckUtils]: 22: Hoare triple {408#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {408#false} is VALID [2022-04-27 22:46:24,903 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-27 22:46:24,903 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 22:46:24,903 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:46:24,903 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1217083229] [2022-04-27 22:46:24,903 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:46:24,903 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1715335817] [2022-04-27 22:46:24,903 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1715335817] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:46:24,903 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:46:24,904 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 22:46:24,904 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1056742326] [2022-04-27 22:46:24,904 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:46:24,905 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 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 23 [2022-04-27 22:46:24,905 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:46:24,905 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 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-27 22:46:24,921 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:46:24,922 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 22:46:24,922 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:46:24,922 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 22:46:24,923 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 22:46:24,923 INFO L87 Difference]: Start difference. First operand 30 states and 32 transitions. Second operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 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-27 22:46:25,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:46:25,052 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-04-27 22:46:25,052 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 22:46:25,052 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 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 23 [2022-04-27 22:46:25,053 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:46:25,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 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-27 22:46:25,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2022-04-27 22:46:25,054 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 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-27 22:46:25,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2022-04-27 22:46:25,055 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 40 transitions. [2022-04-27 22:46:25,084 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:46:25,085 INFO L225 Difference]: With dead ends: 40 [2022-04-27 22:46:25,085 INFO L226 Difference]: Without dead ends: 33 [2022-04-27 22:46:25,085 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-27 22:46:25,086 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 14 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 80 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-27 22:46:25,086 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [15 Valid, 80 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 22:46:25,087 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2022-04-27 22:46:25,093 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 31. [2022-04-27 22:46:25,093 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:46:25,093 INFO L82 GeneralOperation]: Start isEquivalent. First operand 33 states. Second operand has 31 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 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-27 22:46:25,094 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand has 31 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 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-27 22:46:25,094 INFO L87 Difference]: Start difference. First operand 33 states. Second operand has 31 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 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-27 22:46:25,095 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:46:25,095 INFO L93 Difference]: Finished difference Result 33 states and 36 transitions. [2022-04-27 22:46:25,095 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 36 transitions. [2022-04-27 22:46:25,096 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:46:25,096 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:46:25,096 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 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 33 states. [2022-04-27 22:46:25,096 INFO L87 Difference]: Start difference. First operand has 31 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 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 33 states. [2022-04-27 22:46:25,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:46:25,097 INFO L93 Difference]: Finished difference Result 33 states and 36 transitions. [2022-04-27 22:46:25,097 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 36 transitions. [2022-04-27 22:46:25,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:46:25,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:46:25,098 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:46:25,098 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:46:25,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 20 states have (on average 1.15) internal successors, (23), 21 states have internal predecessors, (23), 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-27 22:46:25,099 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 33 transitions. [2022-04-27 22:46:25,099 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 33 transitions. Word has length 23 [2022-04-27 22:46:25,099 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:46:25,099 INFO L495 AbstractCegarLoop]: Abstraction has 31 states and 33 transitions. [2022-04-27 22:46:25,099 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 5 states have internal predecessors, (15), 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-27 22:46:25,099 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 33 transitions. [2022-04-27 22:46:25,100 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-27 22:46:25,100 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:46:25,100 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:46:25,121 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-27 22:46:25,315 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-27 22:46:25,316 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:46:25,316 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:46:25,316 INFO L85 PathProgramCache]: Analyzing trace with hash 921463763, now seen corresponding path program 1 times [2022-04-27 22:46:25,316 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:46:25,316 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [576308241] [2022-04-27 22:46:25,316 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:46:25,317 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:46:25,327 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:46:25,327 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [147929687] [2022-04-27 22:46:25,327 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:46:25,328 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:46:25,328 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:46:25,328 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-27 22:46:25,329 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-27 22:46:25,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:46:25,370 INFO L263 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-27 22:46:25,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:46:25,382 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:46:29,661 INFO L272 TraceCheckUtils]: 0: Hoare triple {650#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {650#true} is VALID [2022-04-27 22:46:29,661 INFO L290 TraceCheckUtils]: 1: Hoare triple {650#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {650#true} is VALID [2022-04-27 22:46:29,661 INFO L290 TraceCheckUtils]: 2: Hoare triple {650#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {650#true} is VALID [2022-04-27 22:46:29,661 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {650#true} {650#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {650#true} is VALID [2022-04-27 22:46:29,662 INFO L272 TraceCheckUtils]: 4: Hoare triple {650#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {650#true} is VALID [2022-04-27 22:46:29,662 INFO L290 TraceCheckUtils]: 5: Hoare triple {650#true} [71] mainENTRY-->L26: 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] {650#true} is VALID [2022-04-27 22:46:29,662 INFO L272 TraceCheckUtils]: 6: Hoare triple {650#true} [73] L26-->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] {650#true} is VALID [2022-04-27 22:46:29,662 INFO L290 TraceCheckUtils]: 7: Hoare triple {650#true} [75] 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#true} is VALID [2022-04-27 22:46:29,662 INFO L290 TraceCheckUtils]: 8: Hoare triple {650#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[] {650#true} is VALID [2022-04-27 22:46:29,662 INFO L290 TraceCheckUtils]: 9: Hoare triple {650#true} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {650#true} is VALID [2022-04-27 22:46:29,663 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {650#true} {650#true} [98] assume_abort_if_notEXIT-->L26-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] {650#true} is VALID [2022-04-27 22:46:29,675 INFO L290 TraceCheckUtils]: 11: Hoare triple {650#true} [74] L26-1-->L32-2: 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] {688#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:46:29,676 INFO L290 TraceCheckUtils]: 12: Hoare triple {688#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {688#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:46:29,676 INFO L272 TraceCheckUtils]: 13: Hoare triple {688#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [82] L33-->__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] {650#true} is VALID [2022-04-27 22:46:29,676 INFO L290 TraceCheckUtils]: 14: Hoare triple {650#true} [85] __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] {698#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:46:29,677 INFO L290 TraceCheckUtils]: 15: Hoare triple {698#(= |__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[] {702#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:46:29,677 INFO L290 TraceCheckUtils]: 16: Hoare triple {702#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {702#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:46:29,678 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {702#(not (= |__VERIFIER_assert_#in~cond| 0))} {688#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [100] __VERIFIER_assertEXIT-->L33-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] {688#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:46:29,678 INFO L290 TraceCheckUtils]: 18: Hoare triple {688#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [87] L33-1-->L37: 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[] {712#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:46:29,679 INFO L290 TraceCheckUtils]: 19: Hoare triple {712#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [91] L37-->L37-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] {716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:46:29,680 INFO L290 TraceCheckUtils]: 20: Hoare triple {716#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} [96] L37-2-->L32-2: 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] {720#(and (= main_~a~0 main_~z~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-27 22:46:29,681 INFO L290 TraceCheckUtils]: 21: Hoare triple {720#(and (= main_~a~0 main_~z~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] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {720#(and (= main_~a~0 main_~z~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-27 22:46:31,199 INFO L272 TraceCheckUtils]: 22: Hoare triple {720#(and (= main_~a~0 main_~z~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))} [82] L33-->__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] {727#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:46:31,200 INFO L290 TraceCheckUtils]: 23: Hoare triple {727#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {731#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:46:31,202 INFO L290 TraceCheckUtils]: 24: Hoare triple {731#(<= 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[] {651#false} is VALID [2022-04-27 22:46:31,202 INFO L290 TraceCheckUtils]: 25: Hoare triple {651#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {651#false} is VALID [2022-04-27 22:46:31,203 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 1 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 22:46:31,203 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:47:28,863 INFO L290 TraceCheckUtils]: 25: Hoare triple {651#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {651#false} is VALID [2022-04-27 22:47:28,863 INFO L290 TraceCheckUtils]: 24: Hoare triple {731#(<= 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[] {651#false} is VALID [2022-04-27 22:47:28,864 INFO L290 TraceCheckUtils]: 23: Hoare triple {727#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {731#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:47:28,866 INFO L272 TraceCheckUtils]: 22: Hoare triple {747#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [82] L33-->__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] {727#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:47:28,866 INFO L290 TraceCheckUtils]: 21: Hoare triple {747#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {747#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-27 22:47:28,871 INFO L290 TraceCheckUtils]: 20: Hoare triple {754#(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))))} [96] L37-2-->L32-2: 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] {747#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-27 22:47:28,873 INFO L290 TraceCheckUtils]: 19: Hoare triple {758#(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))} [91] L37-->L37-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] {754#(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-27 22:47:28,874 INFO L290 TraceCheckUtils]: 18: Hoare triple {758#(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))} [87] L33-1-->L37: 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[] {758#(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-27 22:47:30,735 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {702#(not (= |__VERIFIER_assert_#in~cond| 0))} {650#true} [100] __VERIFIER_assertEXIT-->L33-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] {758#(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-27 22:47:30,736 INFO L290 TraceCheckUtils]: 16: Hoare triple {702#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {702#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:47:30,737 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#(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[] {702#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:47:30,737 INFO L290 TraceCheckUtils]: 14: Hoare triple {650#true} [85] __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] {774#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:47:30,737 INFO L272 TraceCheckUtils]: 13: Hoare triple {650#true} [82] L33-->__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] {650#true} is VALID [2022-04-27 22:47:30,738 INFO L290 TraceCheckUtils]: 12: Hoare triple {650#true} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {650#true} is VALID [2022-04-27 22:47:30,738 INFO L290 TraceCheckUtils]: 11: Hoare triple {650#true} [74] L26-1-->L32-2: 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] {650#true} is VALID [2022-04-27 22:47:30,738 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {650#true} {650#true} [98] assume_abort_if_notEXIT-->L26-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] {650#true} is VALID [2022-04-27 22:47:30,738 INFO L290 TraceCheckUtils]: 9: Hoare triple {650#true} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {650#true} is VALID [2022-04-27 22:47:30,738 INFO L290 TraceCheckUtils]: 8: Hoare triple {650#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[] {650#true} is VALID [2022-04-27 22:47:30,738 INFO L290 TraceCheckUtils]: 7: Hoare triple {650#true} [75] 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#true} is VALID [2022-04-27 22:47:30,739 INFO L272 TraceCheckUtils]: 6: Hoare triple {650#true} [73] L26-->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] {650#true} is VALID [2022-04-27 22:47:30,739 INFO L290 TraceCheckUtils]: 5: Hoare triple {650#true} [71] mainENTRY-->L26: 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] {650#true} is VALID [2022-04-27 22:47:30,739 INFO L272 TraceCheckUtils]: 4: Hoare triple {650#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {650#true} is VALID [2022-04-27 22:47:30,739 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {650#true} {650#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {650#true} is VALID [2022-04-27 22:47:30,739 INFO L290 TraceCheckUtils]: 2: Hoare triple {650#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {650#true} is VALID [2022-04-27 22:47:30,740 INFO L290 TraceCheckUtils]: 1: Hoare triple {650#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {650#true} is VALID [2022-04-27 22:47:30,740 INFO L272 TraceCheckUtils]: 0: Hoare triple {650#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {650#true} is VALID [2022-04-27 22:47:30,740 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 22:47:30,740 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:47:30,741 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [576308241] [2022-04-27 22:47:30,741 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:47:30,741 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [147929687] [2022-04-27 22:47:30,741 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [147929687] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:47:30,741 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 22:47:30,741 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9] total 14 [2022-04-27 22:47:30,741 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1269273402] [2022-04-27 22:47:30,741 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 22:47:30,742 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 1.8571428571428572) internal successors, (26), 13 states have internal predecessors, (26), 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 26 [2022-04-27 22:47:30,742 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:47:30,742 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 1.8571428571428572) internal successors, (26), 13 states have internal predecessors, (26), 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-27 22:47:32,441 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-27 22:47:32,441 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 22:47:32,441 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:47:32,441 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 22:47:32,442 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=142, Unknown=0, NotChecked=0, Total=182 [2022-04-27 22:47:32,442 INFO L87 Difference]: Start difference. First operand 31 states and 33 transitions. Second operand has 14 states, 14 states have (on average 1.8571428571428572) internal successors, (26), 13 states have internal predecessors, (26), 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-27 22:47:38,175 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.10s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 22:47:42,068 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-27 22:47:45,719 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-27 22:47:52,524 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:47:52,524 INFO L93 Difference]: Finished difference Result 50 states and 56 transitions. [2022-04-27 22:47:52,524 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-27 22:47:52,524 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 1.8571428571428572) internal successors, (26), 13 states have internal predecessors, (26), 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 26 [2022-04-27 22:47:52,524 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:47:52,525 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 1.8571428571428572) internal successors, (26), 13 states have internal predecessors, (26), 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-27 22:47:52,526 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 53 transitions. [2022-04-27 22:47:52,526 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 1.8571428571428572) internal successors, (26), 13 states have internal predecessors, (26), 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-27 22:47:52,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 53 transitions. [2022-04-27 22:47:52,528 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 53 transitions. [2022-04-27 22:47:56,267 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 52 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 22:47:56,269 INFO L225 Difference]: With dead ends: 50 [2022-04-27 22:47:56,269 INFO L226 Difference]: Without dead ends: 48 [2022-04-27 22:47:56,269 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 36 SyntacticMatches, 3 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 8.1s TimeCoverageRelationStatistics Valid=73, Invalid=269, Unknown=0, NotChecked=0, Total=342 [2022-04-27 22:47:56,270 INFO L413 NwaCegarLoop]: 19 mSDtfsCounter, 27 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 164 mSolverCounterSat, 19 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 9.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 111 SdHoareTripleChecker+Invalid, 185 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 164 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 9.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:47:56,270 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 111 Invalid, 185 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 164 Invalid, 2 Unknown, 0 Unchecked, 9.1s Time] [2022-04-27 22:47:56,271 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-27 22:47:56,284 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 44. [2022-04-27 22:47:56,284 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:47:56,284 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 44 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 22:47:56,284 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 44 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 22:47:56,285 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 44 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 22:47:56,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:47:56,288 INFO L93 Difference]: Finished difference Result 48 states and 54 transitions. [2022-04-27 22:47:56,288 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 54 transitions. [2022-04-27 22:47:56,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:47:56,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:47:56,292 INFO L74 IsIncluded]: Start isIncluded. First operand has 44 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 48 states. [2022-04-27 22:47:56,292 INFO L87 Difference]: Start difference. First operand has 44 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 48 states. [2022-04-27 22:47:56,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:47:56,294 INFO L93 Difference]: Finished difference Result 48 states and 54 transitions. [2022-04-27 22:47:56,294 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 54 transitions. [2022-04-27 22:47:56,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:47:56,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:47:56,295 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:47:56,295 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:47:56,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 30 states have (on average 1.2) internal successors, (36), 32 states have internal predecessors, (36), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 22:47:56,302 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 50 transitions. [2022-04-27 22:47:56,302 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 50 transitions. Word has length 26 [2022-04-27 22:47:56,302 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:47:56,302 INFO L495 AbstractCegarLoop]: Abstraction has 44 states and 50 transitions. [2022-04-27 22:47:56,302 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 1.8571428571428572) internal successors, (26), 13 states have internal predecessors, (26), 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-27 22:47:56,303 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 50 transitions. [2022-04-27 22:47:56,304 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-27 22:47:56,304 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:47:56,304 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:47:56,320 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-27 22:47:56,504 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-27 22:47:56,505 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:47:56,505 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:47:56,505 INFO L85 PathProgramCache]: Analyzing trace with hash 1808967444, now seen corresponding path program 1 times [2022-04-27 22:47:56,505 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:47:56,505 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [771870469] [2022-04-27 22:47:56,505 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:47:56,505 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:47:56,515 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:47:56,515 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [492086140] [2022-04-27 22:47:56,515 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:47:56,515 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:47:56,515 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:47:56,516 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-27 22:47:56,517 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-27 22:47:56,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:47:56,549 INFO L263 TraceCheckSpWp]: Trace formula consists of 88 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-27 22:47:56,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:47:56,559 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:47:57,467 INFO L272 TraceCheckUtils]: 0: Hoare triple {1056#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1056#true} is VALID [2022-04-27 22:47:57,467 INFO L290 TraceCheckUtils]: 1: Hoare triple {1056#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1056#true} is VALID [2022-04-27 22:47:57,467 INFO L290 TraceCheckUtils]: 2: Hoare triple {1056#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1056#true} is VALID [2022-04-27 22:47:57,467 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1056#true} {1056#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1056#true} is VALID [2022-04-27 22:47:57,468 INFO L272 TraceCheckUtils]: 4: Hoare triple {1056#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1056#true} is VALID [2022-04-27 22:47:57,468 INFO L290 TraceCheckUtils]: 5: Hoare triple {1056#true} [71] mainENTRY-->L26: 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] {1056#true} is VALID [2022-04-27 22:47:57,468 INFO L272 TraceCheckUtils]: 6: Hoare triple {1056#true} [73] L26-->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] {1056#true} is VALID [2022-04-27 22:47:57,475 INFO L290 TraceCheckUtils]: 7: Hoare triple {1056#true} [75] 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] {1082#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 22:47:57,476 INFO L290 TraceCheckUtils]: 8: Hoare triple {1082#(= 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[] {1086#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 22:47:57,476 INFO L290 TraceCheckUtils]: 9: Hoare triple {1086#(not (= |assume_abort_if_not_#in~cond| 0))} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1086#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 22:47:57,477 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1086#(not (= |assume_abort_if_not_#in~cond| 0))} {1056#true} [98] assume_abort_if_notEXIT-->L26-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] {1093#(<= 1 main_~b~0)} is VALID [2022-04-27 22:47:57,477 INFO L290 TraceCheckUtils]: 11: Hoare triple {1093#(<= 1 main_~b~0)} [74] L26-1-->L32-2: 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] {1097#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:47:57,477 INFO L290 TraceCheckUtils]: 12: Hoare triple {1097#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1097#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:47:57,478 INFO L272 TraceCheckUtils]: 13: Hoare triple {1097#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [82] L33-->__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] {1056#true} is VALID [2022-04-27 22:47:57,478 INFO L290 TraceCheckUtils]: 14: Hoare triple {1056#true} [85] __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] {1056#true} is VALID [2022-04-27 22:47:57,478 INFO L290 TraceCheckUtils]: 15: Hoare triple {1056#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[] {1056#true} is VALID [2022-04-27 22:47:57,478 INFO L290 TraceCheckUtils]: 16: Hoare triple {1056#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1056#true} is VALID [2022-04-27 22:47:57,479 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1056#true} {1097#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [100] __VERIFIER_assertEXIT-->L33-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] {1097#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:47:57,479 INFO L290 TraceCheckUtils]: 18: Hoare triple {1097#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [87] L33-1-->L37: 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[] {1097#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:47:57,480 INFO L290 TraceCheckUtils]: 19: Hoare triple {1097#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [92] L37-->L37-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[] {1122#(and (= main_~z~0 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-27 22:47:57,481 INFO L290 TraceCheckUtils]: 20: Hoare triple {1122#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [96] L37-2-->L32-2: 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] {1126#(and (= main_~z~0 0) (= 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))} is VALID [2022-04-27 22:47:57,481 INFO L290 TraceCheckUtils]: 21: Hoare triple {1126#(and (= main_~z~0 0) (= 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))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1126#(and (= main_~z~0 0) (= 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))} is VALID [2022-04-27 22:47:57,483 INFO L272 TraceCheckUtils]: 22: Hoare triple {1126#(and (= main_~z~0 0) (= 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))} [82] L33-->__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] {1133#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:47:57,483 INFO L290 TraceCheckUtils]: 23: Hoare triple {1133#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {1137#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:47:57,484 INFO L290 TraceCheckUtils]: 24: Hoare triple {1137#(<= 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[] {1057#false} is VALID [2022-04-27 22:47:57,484 INFO L290 TraceCheckUtils]: 25: Hoare triple {1057#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1057#false} is VALID [2022-04-27 22:47:57,484 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-27 22:47:57,484 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:48:28,720 INFO L290 TraceCheckUtils]: 25: Hoare triple {1057#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1057#false} is VALID [2022-04-27 22:48:28,720 INFO L290 TraceCheckUtils]: 24: Hoare triple {1137#(<= 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[] {1057#false} is VALID [2022-04-27 22:48:28,721 INFO L290 TraceCheckUtils]: 23: Hoare triple {1133#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {1137#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:48:28,721 INFO L272 TraceCheckUtils]: 22: Hoare triple {1153#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [82] L33-->__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] {1133#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:48:28,722 INFO L290 TraceCheckUtils]: 21: Hoare triple {1153#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1153#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-27 22:48:28,727 INFO L290 TraceCheckUtils]: 20: Hoare triple {1160#(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))))} [96] L37-2-->L32-2: 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] {1153#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-27 22:48:28,729 INFO L290 TraceCheckUtils]: 19: Hoare triple {1164#(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] L37-->L37-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[] {1160#(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-27 22:48:28,729 INFO L290 TraceCheckUtils]: 18: Hoare triple {1164#(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)))))} [87] L33-1-->L37: 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[] {1164#(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-27 22:48:28,730 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1056#true} {1164#(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)))))} [100] __VERIFIER_assertEXIT-->L33-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] {1164#(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-27 22:48:28,730 INFO L290 TraceCheckUtils]: 16: Hoare triple {1056#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1056#true} is VALID [2022-04-27 22:48:28,730 INFO L290 TraceCheckUtils]: 15: Hoare triple {1056#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[] {1056#true} is VALID [2022-04-27 22:48:28,730 INFO L290 TraceCheckUtils]: 14: Hoare triple {1056#true} [85] __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] {1056#true} is VALID [2022-04-27 22:48:28,731 INFO L272 TraceCheckUtils]: 13: Hoare triple {1164#(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)))))} [82] L33-->__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] {1056#true} is VALID [2022-04-27 22:48:28,731 INFO L290 TraceCheckUtils]: 12: Hoare triple {1164#(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)))))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1164#(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-27 22:48:28,735 INFO L290 TraceCheckUtils]: 11: Hoare triple {1189#(or (= (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} [74] L26-1-->L32-2: 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] {1164#(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-27 22:48:28,735 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1086#(not (= |assume_abort_if_not_#in~cond| 0))} {1056#true} [98] assume_abort_if_notEXIT-->L26-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] {1189#(or (= (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} is VALID [2022-04-27 22:48:28,736 INFO L290 TraceCheckUtils]: 9: Hoare triple {1086#(not (= |assume_abort_if_not_#in~cond| 0))} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1086#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 22:48:28,736 INFO L290 TraceCheckUtils]: 8: Hoare triple {1202#(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[] {1086#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 22:48:28,736 INFO L290 TraceCheckUtils]: 7: Hoare triple {1056#true} [75] 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] {1202#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 22:48:28,737 INFO L272 TraceCheckUtils]: 6: Hoare triple {1056#true} [73] L26-->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] {1056#true} is VALID [2022-04-27 22:48:28,737 INFO L290 TraceCheckUtils]: 5: Hoare triple {1056#true} [71] mainENTRY-->L26: 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] {1056#true} is VALID [2022-04-27 22:48:28,737 INFO L272 TraceCheckUtils]: 4: Hoare triple {1056#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1056#true} is VALID [2022-04-27 22:48:28,737 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1056#true} {1056#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1056#true} is VALID [2022-04-27 22:48:28,737 INFO L290 TraceCheckUtils]: 2: Hoare triple {1056#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1056#true} is VALID [2022-04-27 22:48:28,737 INFO L290 TraceCheckUtils]: 1: Hoare triple {1056#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1056#true} is VALID [2022-04-27 22:48:28,737 INFO L272 TraceCheckUtils]: 0: Hoare triple {1056#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1056#true} is VALID [2022-04-27 22:48:28,738 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-27 22:48:28,738 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:48:28,738 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [771870469] [2022-04-27 22:48:28,738 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:48:28,738 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [492086140] [2022-04-27 22:48:28,738 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [492086140] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:48:28,738 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 22:48:28,738 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 15 [2022-04-27 22:48:28,738 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [647534987] [2022-04-27 22:48:28,738 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 22:48:28,739 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 1.7333333333333334) internal successors, (26), 12 states have internal predecessors, (26), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 26 [2022-04-27 22:48:28,739 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:48:28,739 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 1.7333333333333334) internal successors, (26), 12 states have internal predecessors, (26), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 22:48:28,774 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:48:28,774 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-27 22:48:28,774 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:48:28,774 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-27 22:48:28,775 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=165, Unknown=0, NotChecked=0, Total=210 [2022-04-27 22:48:28,775 INFO L87 Difference]: Start difference. First operand 44 states and 50 transitions. Second operand has 15 states, 15 states have (on average 1.7333333333333334) internal successors, (26), 12 states have internal predecessors, (26), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 22:48:30,226 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:48:30,227 INFO L93 Difference]: Finished difference Result 80 states and 94 transitions. [2022-04-27 22:48:30,227 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-27 22:48:30,227 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 1.7333333333333334) internal successors, (26), 12 states have internal predecessors, (26), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 26 [2022-04-27 22:48:30,227 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:48:30,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.7333333333333334) internal successors, (26), 12 states have internal predecessors, (26), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 22:48:30,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 68 transitions. [2022-04-27 22:48:30,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.7333333333333334) internal successors, (26), 12 states have internal predecessors, (26), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 22:48:30,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 68 transitions. [2022-04-27 22:48:30,231 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 68 transitions. [2022-04-27 22:48:30,301 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:48:30,315 INFO L225 Difference]: With dead ends: 80 [2022-04-27 22:48:30,315 INFO L226 Difference]: Without dead ends: 73 [2022-04-27 22:48:30,316 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 37 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 61 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=93, Invalid=327, Unknown=0, NotChecked=0, Total=420 [2022-04-27 22:48:30,316 INFO L413 NwaCegarLoop]: 18 mSDtfsCounter, 46 mSDsluCounter, 91 mSDsCounter, 0 mSdLazyCounter, 195 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 48 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 225 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 195 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-27 22:48:30,316 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [48 Valid, 109 Invalid, 225 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 195 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-27 22:48:30,319 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states. [2022-04-27 22:48:30,347 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 70. [2022-04-27 22:48:30,347 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:48:30,348 INFO L82 GeneralOperation]: Start isEquivalent. First operand 73 states. Second operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 53 states have internal predecessors, (61), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 22:48:30,348 INFO L74 IsIncluded]: Start isIncluded. First operand 73 states. Second operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 53 states have internal predecessors, (61), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 22:48:30,348 INFO L87 Difference]: Start difference. First operand 73 states. Second operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 53 states have internal predecessors, (61), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 22:48:30,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:48:30,354 INFO L93 Difference]: Finished difference Result 73 states and 86 transitions. [2022-04-27 22:48:30,354 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 86 transitions. [2022-04-27 22:48:30,355 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:48:30,355 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:48:30,356 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 53 states have internal predecessors, (61), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 73 states. [2022-04-27 22:48:30,357 INFO L87 Difference]: Start difference. First operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 53 states have internal predecessors, (61), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 73 states. [2022-04-27 22:48:30,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:48:30,360 INFO L93 Difference]: Finished difference Result 73 states and 86 transitions. [2022-04-27 22:48:30,360 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 86 transitions. [2022-04-27 22:48:30,360 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:48:30,360 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:48:30,360 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:48:30,360 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:48:30,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 53 states have internal predecessors, (61), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 22:48:30,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 83 transitions. [2022-04-27 22:48:30,364 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 83 transitions. Word has length 26 [2022-04-27 22:48:30,364 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:48:30,364 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 83 transitions. [2022-04-27 22:48:30,365 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 1.7333333333333334) internal successors, (26), 12 states have internal predecessors, (26), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 22:48:30,365 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 83 transitions. [2022-04-27 22:48:30,366 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-27 22:48:30,366 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:48:30,366 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:48:30,405 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-27 22:48:30,583 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-27 22:48:30,583 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:48:30,584 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:48:30,584 INFO L85 PathProgramCache]: Analyzing trace with hash -1415101266, now seen corresponding path program 1 times [2022-04-27 22:48:30,584 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:48:30,584 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1287119827] [2022-04-27 22:48:30,584 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:48:30,584 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:48:30,596 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:48:30,597 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2017611295] [2022-04-27 22:48:30,597 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:48:30,597 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:48:30,597 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:48:30,600 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-27 22:48:30,607 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-27 22:48:30,639 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:48:30,640 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-27 22:48:30,645 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:48:30,646 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:48:34,989 INFO L272 TraceCheckUtils]: 0: Hoare triple {1593#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:34,989 INFO L290 TraceCheckUtils]: 1: Hoare triple {1593#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1593#true} is VALID [2022-04-27 22:48:34,989 INFO L290 TraceCheckUtils]: 2: Hoare triple {1593#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:34,989 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1593#true} {1593#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:34,990 INFO L272 TraceCheckUtils]: 4: Hoare triple {1593#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:34,990 INFO L290 TraceCheckUtils]: 5: Hoare triple {1593#true} [71] mainENTRY-->L26: 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] {1593#true} is VALID [2022-04-27 22:48:34,990 INFO L272 TraceCheckUtils]: 6: Hoare triple {1593#true} [73] L26-->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] {1593#true} is VALID [2022-04-27 22:48:34,990 INFO L290 TraceCheckUtils]: 7: Hoare triple {1593#true} [75] 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] {1593#true} is VALID [2022-04-27 22:48:34,990 INFO L290 TraceCheckUtils]: 8: Hoare triple {1593#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[] {1593#true} is VALID [2022-04-27 22:48:34,990 INFO L290 TraceCheckUtils]: 9: Hoare triple {1593#true} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:34,990 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1593#true} {1593#true} [98] assume_abort_if_notEXIT-->L26-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] {1593#true} is VALID [2022-04-27 22:48:34,990 INFO L290 TraceCheckUtils]: 11: Hoare triple {1593#true} [74] L26-1-->L32-2: 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] {1593#true} is VALID [2022-04-27 22:48:34,990 INFO L290 TraceCheckUtils]: 12: Hoare triple {1593#true} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:34,991 INFO L272 TraceCheckUtils]: 13: Hoare triple {1593#true} [82] L33-->__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] {1593#true} is VALID [2022-04-27 22:48:34,991 INFO L290 TraceCheckUtils]: 14: Hoare triple {1593#true} [85] __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] {1593#true} is VALID [2022-04-27 22:48:34,991 INFO L290 TraceCheckUtils]: 15: Hoare triple {1593#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[] {1593#true} is VALID [2022-04-27 22:48:34,991 INFO L290 TraceCheckUtils]: 16: Hoare triple {1593#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:34,991 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1593#true} {1593#true} [100] __VERIFIER_assertEXIT-->L33-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] {1593#true} is VALID [2022-04-27 22:48:34,991 INFO L290 TraceCheckUtils]: 18: Hoare triple {1593#true} [87] L33-1-->L37: 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[] {1593#true} is VALID [2022-04-27 22:48:34,991 INFO L290 TraceCheckUtils]: 19: Hoare triple {1593#true} [91] L37-->L37-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] {1593#true} is VALID [2022-04-27 22:48:34,991 INFO L290 TraceCheckUtils]: 20: Hoare triple {1593#true} [96] L37-2-->L32-2: 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] {1593#true} is VALID [2022-04-27 22:48:34,991 INFO L290 TraceCheckUtils]: 21: Hoare triple {1593#true} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:34,992 INFO L272 TraceCheckUtils]: 22: Hoare triple {1593#true} [82] L33-->__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] {1593#true} is VALID [2022-04-27 22:48:34,999 INFO L290 TraceCheckUtils]: 23: Hoare triple {1593#true} [85] __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] {1667#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:48:35,000 INFO L290 TraceCheckUtils]: 24: Hoare triple {1667#(= |__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[] {1671#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:48:35,000 INFO L290 TraceCheckUtils]: 25: Hoare triple {1671#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1671#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:48:37,003 WARN L284 TraceCheckUtils]: 26: Hoare quadruple {1671#(not (= |__VERIFIER_assert_#in~cond| 0))} {1593#true} [100] __VERIFIER_assertEXIT-->L33-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] {1678#(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-27 22:48:37,004 INFO L290 TraceCheckUtils]: 27: Hoare triple {1678#(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))} [86] L33-1-->L32-3: 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[] {1682#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-27 22:48:37,004 INFO L272 TraceCheckUtils]: 28: Hoare triple {1682#(= main_~z~0 (* main_~b~0 main_~a~0))} [81] L32-3-->__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] {1686#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:48:37,005 INFO L290 TraceCheckUtils]: 29: Hoare triple {1686#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {1690#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:48:37,005 INFO L290 TraceCheckUtils]: 30: Hoare triple {1690#(<= 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[] {1594#false} is VALID [2022-04-27 22:48:37,005 INFO L290 TraceCheckUtils]: 31: Hoare triple {1594#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1594#false} is VALID [2022-04-27 22:48:37,005 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-04-27 22:48:37,005 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:48:53,611 INFO L290 TraceCheckUtils]: 31: Hoare triple {1594#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1594#false} is VALID [2022-04-27 22:48:53,612 INFO L290 TraceCheckUtils]: 30: Hoare triple {1690#(<= 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[] {1594#false} is VALID [2022-04-27 22:48:53,612 INFO L290 TraceCheckUtils]: 29: Hoare triple {1686#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {1690#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:48:53,613 INFO L272 TraceCheckUtils]: 28: Hoare triple {1682#(= main_~z~0 (* main_~b~0 main_~a~0))} [81] L32-3-->__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] {1686#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:48:53,613 INFO L290 TraceCheckUtils]: 27: Hoare triple {1709#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} [86] L33-1-->L32-3: 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[] {1682#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-27 22:48:53,614 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1671#(not (= |__VERIFIER_assert_#in~cond| 0))} {1593#true} [100] __VERIFIER_assertEXIT-->L33-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] {1709#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-27 22:48:53,615 INFO L290 TraceCheckUtils]: 25: Hoare triple {1671#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1671#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:48:53,615 INFO L290 TraceCheckUtils]: 24: Hoare triple {1722#(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[] {1671#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:48:53,627 INFO L290 TraceCheckUtils]: 23: Hoare triple {1593#true} [85] __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] {1722#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:48:53,628 INFO L272 TraceCheckUtils]: 22: Hoare triple {1593#true} [82] L33-->__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] {1593#true} is VALID [2022-04-27 22:48:53,628 INFO L290 TraceCheckUtils]: 21: Hoare triple {1593#true} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:53,628 INFO L290 TraceCheckUtils]: 20: Hoare triple {1593#true} [96] L37-2-->L32-2: 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] {1593#true} is VALID [2022-04-27 22:48:53,628 INFO L290 TraceCheckUtils]: 19: Hoare triple {1593#true} [91] L37-->L37-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] {1593#true} is VALID [2022-04-27 22:48:53,628 INFO L290 TraceCheckUtils]: 18: Hoare triple {1593#true} [87] L33-1-->L37: 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[] {1593#true} is VALID [2022-04-27 22:48:53,628 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1593#true} {1593#true} [100] __VERIFIER_assertEXIT-->L33-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] {1593#true} is VALID [2022-04-27 22:48:53,629 INFO L290 TraceCheckUtils]: 16: Hoare triple {1593#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:53,629 INFO L290 TraceCheckUtils]: 15: Hoare triple {1593#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[] {1593#true} is VALID [2022-04-27 22:48:53,629 INFO L290 TraceCheckUtils]: 14: Hoare triple {1593#true} [85] __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] {1593#true} is VALID [2022-04-27 22:48:53,629 INFO L272 TraceCheckUtils]: 13: Hoare triple {1593#true} [82] L33-->__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] {1593#true} is VALID [2022-04-27 22:48:53,629 INFO L290 TraceCheckUtils]: 12: Hoare triple {1593#true} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:53,629 INFO L290 TraceCheckUtils]: 11: Hoare triple {1593#true} [74] L26-1-->L32-2: 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] {1593#true} is VALID [2022-04-27 22:48:53,629 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1593#true} {1593#true} [98] assume_abort_if_notEXIT-->L26-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] {1593#true} is VALID [2022-04-27 22:48:53,630 INFO L290 TraceCheckUtils]: 9: Hoare triple {1593#true} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:53,630 INFO L290 TraceCheckUtils]: 8: Hoare triple {1593#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[] {1593#true} is VALID [2022-04-27 22:48:53,630 INFO L290 TraceCheckUtils]: 7: Hoare triple {1593#true} [75] 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] {1593#true} is VALID [2022-04-27 22:48:53,630 INFO L272 TraceCheckUtils]: 6: Hoare triple {1593#true} [73] L26-->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] {1593#true} is VALID [2022-04-27 22:48:53,630 INFO L290 TraceCheckUtils]: 5: Hoare triple {1593#true} [71] mainENTRY-->L26: 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] {1593#true} is VALID [2022-04-27 22:48:53,631 INFO L272 TraceCheckUtils]: 4: Hoare triple {1593#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:53,631 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1593#true} {1593#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:53,631 INFO L290 TraceCheckUtils]: 2: Hoare triple {1593#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:53,632 INFO L290 TraceCheckUtils]: 1: Hoare triple {1593#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1593#true} is VALID [2022-04-27 22:48:53,632 INFO L272 TraceCheckUtils]: 0: Hoare triple {1593#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1593#true} is VALID [2022-04-27 22:48:53,632 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-04-27 22:48:53,634 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:48:53,634 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1287119827] [2022-04-27 22:48:53,634 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:48:53,634 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2017611295] [2022-04-27 22:48:53,634 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2017611295] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:48:53,634 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 22:48:53,634 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-27 22:48:53,634 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [739133819] [2022-04-27 22:48:53,634 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 22:48:53,635 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 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 32 [2022-04-27 22:48:53,635 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:48:53,636 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 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-27 22:48:55,656 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 33 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 22:48:55,657 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 22:48:55,657 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:48:55,657 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 22:48:55,657 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-27 22:48:55,658 INFO L87 Difference]: Start difference. First operand 70 states and 83 transitions. Second operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 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-27 22:48:57,678 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-27 22:48:57,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:48:57,968 INFO L93 Difference]: Finished difference Result 77 states and 89 transitions. [2022-04-27 22:48:57,968 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 22:48:57,968 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 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 32 [2022-04-27 22:48:57,968 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:48:57,968 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 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-27 22:48:57,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 35 transitions. [2022-04-27 22:48:57,972 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 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-27 22:48:57,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 35 transitions. [2022-04-27 22:48:57,973 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 35 transitions. [2022-04-27 22:49:01,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 33 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-27 22:49:02,001 INFO L225 Difference]: With dead ends: 77 [2022-04-27 22:49:02,001 INFO L226 Difference]: Without dead ends: 70 [2022-04-27 22:49:02,001 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 54 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-27 22:49:02,002 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 21 mSDsluCounter, 47 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 67 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:49:02,002 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [21 Valid, 67 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 50 Invalid, 1 Unknown, 0 Unchecked, 2.1s Time] [2022-04-27 22:49:02,003 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-27 22:49:02,029 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 69. [2022-04-27 22:49:02,029 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:49:02,029 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 69 states, 50 states have (on average 1.14) internal successors, (57), 52 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 22:49:02,029 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 69 states, 50 states have (on average 1.14) internal successors, (57), 52 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 22:49:02,030 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 69 states, 50 states have (on average 1.14) internal successors, (57), 52 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 22:49:02,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:49:02,032 INFO L93 Difference]: Finished difference Result 70 states and 79 transitions. [2022-04-27 22:49:02,032 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 79 transitions. [2022-04-27 22:49:02,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:49:02,033 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:49:02,033 INFO L74 IsIncluded]: Start isIncluded. First operand has 69 states, 50 states have (on average 1.14) internal successors, (57), 52 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 70 states. [2022-04-27 22:49:02,033 INFO L87 Difference]: Start difference. First operand has 69 states, 50 states have (on average 1.14) internal successors, (57), 52 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 70 states. [2022-04-27 22:49:02,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:49:02,035 INFO L93 Difference]: Finished difference Result 70 states and 79 transitions. [2022-04-27 22:49:02,035 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 79 transitions. [2022-04-27 22:49:02,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:49:02,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:49:02,035 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:49:02,035 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:49:02,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 69 states, 50 states have (on average 1.14) internal successors, (57), 52 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 7 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 22:49:02,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 78 transitions. [2022-04-27 22:49:02,037 INFO L78 Accepts]: Start accepts. Automaton has 69 states and 78 transitions. Word has length 32 [2022-04-27 22:49:02,037 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:49:02,037 INFO L495 AbstractCegarLoop]: Abstraction has 69 states and 78 transitions. [2022-04-27 22:49:02,037 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 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-27 22:49:02,037 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 78 transitions. [2022-04-27 22:49:02,039 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 22:49:02,039 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:49:02,039 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:49:02,055 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-27 22:49:02,255 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-27 22:49:02,256 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:49:02,256 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:49:02,256 INFO L85 PathProgramCache]: Analyzing trace with hash -847876140, now seen corresponding path program 1 times [2022-04-27 22:49:02,256 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:49:02,256 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1637894964] [2022-04-27 22:49:02,256 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:49:02,256 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:49:02,265 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:49:02,266 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1647864203] [2022-04-27 22:49:02,266 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:49:02,266 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:49:02,266 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:49:02,267 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-27 22:49:02,267 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-27 22:49:02,309 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:49:02,310 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-27 22:49:02,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:49:02,325 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:49:19,081 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 22:49:31,213 INFO L272 TraceCheckUtils]: 0: Hoare triple {2140#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2140#true} is VALID [2022-04-27 22:49:31,214 INFO L290 TraceCheckUtils]: 1: Hoare triple {2140#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2140#true} is VALID [2022-04-27 22:49:31,214 INFO L290 TraceCheckUtils]: 2: Hoare triple {2140#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2140#true} is VALID [2022-04-27 22:49:31,214 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2140#true} {2140#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2140#true} is VALID [2022-04-27 22:49:31,214 INFO L272 TraceCheckUtils]: 4: Hoare triple {2140#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2140#true} is VALID [2022-04-27 22:49:31,214 INFO L290 TraceCheckUtils]: 5: Hoare triple {2140#true} [71] mainENTRY-->L26: 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] {2140#true} is VALID [2022-04-27 22:49:31,214 INFO L272 TraceCheckUtils]: 6: Hoare triple {2140#true} [73] L26-->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] {2140#true} is VALID [2022-04-27 22:49:31,214 INFO L290 TraceCheckUtils]: 7: Hoare triple {2140#true} [75] 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] {2140#true} is VALID [2022-04-27 22:49:31,214 INFO L290 TraceCheckUtils]: 8: Hoare triple {2140#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[] {2140#true} is VALID [2022-04-27 22:49:31,214 INFO L290 TraceCheckUtils]: 9: Hoare triple {2140#true} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2140#true} is VALID [2022-04-27 22:49:31,214 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2140#true} {2140#true} [98] assume_abort_if_notEXIT-->L26-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] {2140#true} is VALID [2022-04-27 22:49:31,215 INFO L290 TraceCheckUtils]: 11: Hoare triple {2140#true} [74] L26-1-->L32-2: 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] {2178#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:49:31,215 INFO L290 TraceCheckUtils]: 12: Hoare triple {2178#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2178#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:49:31,215 INFO L272 TraceCheckUtils]: 13: Hoare triple {2178#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} [82] L33-->__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] {2140#true} is VALID [2022-04-27 22:49:31,216 INFO L290 TraceCheckUtils]: 14: Hoare triple {2140#true} [85] __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] {2140#true} is VALID [2022-04-27 22:49:31,216 INFO L290 TraceCheckUtils]: 15: Hoare triple {2140#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[] {2140#true} is VALID [2022-04-27 22:49:31,216 INFO L290 TraceCheckUtils]: 16: Hoare triple {2140#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2140#true} is VALID [2022-04-27 22:49:31,216 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {2140#true} {2178#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} [100] __VERIFIER_assertEXIT-->L33-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] {2178#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:49:31,217 INFO L290 TraceCheckUtils]: 18: Hoare triple {2178#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} [87] L33-1-->L37: 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[] {2178#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:49:31,217 INFO L290 TraceCheckUtils]: 19: Hoare triple {2178#(and (= main_~z~0 0) (= main_~a~0 main_~x~0))} [91] L37-->L37-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] {2203#(= main_~a~0 main_~x~0)} is VALID [2022-04-27 22:49:31,218 INFO L290 TraceCheckUtils]: 20: Hoare triple {2203#(= main_~a~0 main_~x~0)} [96] L37-2-->L32-2: 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] {2207#(= (* main_~a~0 2) main_~x~0)} is VALID [2022-04-27 22:49:31,218 INFO L290 TraceCheckUtils]: 21: Hoare triple {2207#(= (* main_~a~0 2) main_~x~0)} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2207#(= (* main_~a~0 2) main_~x~0)} is VALID [2022-04-27 22:49:31,218 INFO L272 TraceCheckUtils]: 22: Hoare triple {2207#(= (* main_~a~0 2) main_~x~0)} [82] L33-->__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] {2140#true} is VALID [2022-04-27 22:49:31,218 INFO L290 TraceCheckUtils]: 23: Hoare triple {2140#true} [85] __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] {2140#true} is VALID [2022-04-27 22:49:31,219 INFO L290 TraceCheckUtils]: 24: Hoare triple {2140#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[] {2140#true} is VALID [2022-04-27 22:49:31,219 INFO L290 TraceCheckUtils]: 25: Hoare triple {2140#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2140#true} is VALID [2022-04-27 22:49:31,219 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2140#true} {2207#(= (* main_~a~0 2) main_~x~0)} [100] __VERIFIER_assertEXIT-->L33-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] {2207#(= (* main_~a~0 2) main_~x~0)} is VALID [2022-04-27 22:49:31,220 INFO L290 TraceCheckUtils]: 27: Hoare triple {2207#(= (* main_~a~0 2) main_~x~0)} [87] L33-1-->L37: 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[] {2229#(and (not (= main_~y~0 0)) (= (* main_~a~0 2) main_~x~0))} is VALID [2022-04-27 22:49:31,220 INFO L290 TraceCheckUtils]: 28: Hoare triple {2229#(and (not (= main_~y~0 0)) (= (* main_~a~0 2) main_~x~0))} [91] L37-->L37-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] {2233#(and (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:49:31,221 INFO L290 TraceCheckUtils]: 29: Hoare triple {2233#(and (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} [96] L37-2-->L32-2: 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] {2237#(and (= (* main_~a~0 4) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:49:31,221 INFO L290 TraceCheckUtils]: 30: Hoare triple {2237#(and (= (* main_~a~0 4) main_~x~0) (< 0 (+ main_~y~0 1)))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2237#(and (= (* main_~a~0 4) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:49:31,222 INFO L272 TraceCheckUtils]: 31: Hoare triple {2237#(and (= (* main_~a~0 4) main_~x~0) (< 0 (+ main_~y~0 1)))} [82] L33-->__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] {2140#true} is VALID [2022-04-27 22:49:31,222 INFO L290 TraceCheckUtils]: 32: Hoare triple {2140#true} [85] __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] {2247#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:49:31,222 INFO L290 TraceCheckUtils]: 33: Hoare triple {2247#(= |__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[] {2251#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:49:31,222 INFO L290 TraceCheckUtils]: 34: Hoare triple {2251#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2251#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:49:31,223 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {2251#(not (= |__VERIFIER_assert_#in~cond| 0))} {2237#(and (= (* main_~a~0 4) main_~x~0) (< 0 (+ main_~y~0 1)))} [100] __VERIFIER_assertEXIT-->L33-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] {2258#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 4) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:49:31,224 INFO L290 TraceCheckUtils]: 36: Hoare triple {2258#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 4) main_~x~0) (< 0 (+ main_~y~0 1)))} [87] L33-1-->L37: 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[] {2258#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 4) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:49:31,224 INFO L290 TraceCheckUtils]: 37: Hoare triple {2258#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 4) main_~x~0) (< 0 (+ main_~y~0 1)))} [92] L37-->L37-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[] {2265#(and (= (+ 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)) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:49:31,282 INFO L290 TraceCheckUtils]: 38: Hoare triple {2265#(and (= (+ 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)) (< 0 (+ main_~y~0 1)))} [96] L37-2-->L32-2: 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] {2269#(and (= main_~x~0 (* main_~a~0 8)) (exists ((aux_mod_v_main_~y~0_26_22 Int) (aux_div_v_main_~y~0_26_22 Int)) (and (not (= aux_mod_v_main_~y~0_26_22 1)) (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* (* main_~a~0 4) (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22)))) (< 0 (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22 1)) (<= 0 aux_mod_v_main_~y~0_26_22) (= main_~y~0 (div (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22) 2)) (< aux_mod_v_main_~y~0_26_22 2))))} is VALID [2022-04-27 22:49:32,083 INFO L290 TraceCheckUtils]: 39: Hoare triple {2269#(and (= main_~x~0 (* main_~a~0 8)) (exists ((aux_mod_v_main_~y~0_26_22 Int) (aux_div_v_main_~y~0_26_22 Int)) (and (not (= aux_mod_v_main_~y~0_26_22 1)) (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* (* main_~a~0 4) (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22)))) (< 0 (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22 1)) (<= 0 aux_mod_v_main_~y~0_26_22) (= main_~y~0 (div (+ (* aux_div_v_main_~y~0_26_22 2) aux_mod_v_main_~y~0_26_22) 2)) (< aux_mod_v_main_~y~0_26_22 2))))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#(and (= (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))) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:49:32,085 INFO L272 TraceCheckUtils]: 40: Hoare triple {2273#(and (= (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))) (< 0 (+ main_~y~0 1)))} [82] L33-->__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] {2277#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:49:32,086 INFO L290 TraceCheckUtils]: 41: Hoare triple {2277#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {2281#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:49:32,086 INFO L290 TraceCheckUtils]: 42: Hoare triple {2281#(<= 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[] {2141#false} is VALID [2022-04-27 22:49:32,086 INFO L290 TraceCheckUtils]: 43: Hoare triple {2141#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2141#false} is VALID [2022-04-27 22:49:32,088 INFO L134 CoverageAnalysis]: Checked inductivity of 39 backedges. 11 proven. 22 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:49:32,088 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:49:53,039 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:49:53,040 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1637894964] [2022-04-27 22:49:53,040 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:49:53,040 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1647864203] [2022-04-27 22:49:53,040 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1647864203] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:49:53,040 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 22:49:53,040 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2022-04-27 22:49:53,040 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1531426797] [2022-04-27 22:49:53,040 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 22:49:53,040 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 15 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 44 [2022-04-27 22:49:53,041 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:49:53,041 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 15 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 22:49:55,167 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 40 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 22:49:55,167 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-27 22:49:55,167 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:49:55,167 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-27 22:49:55,168 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=318, Unknown=0, NotChecked=0, Total=380 [2022-04-27 22:49:55,168 INFO L87 Difference]: Start difference. First operand 69 states and 78 transitions. Second operand has 16 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 15 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 22:49:57,832 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-27 22:50:01,208 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:50:01,208 INFO L93 Difference]: Finished difference Result 98 states and 111 transitions. [2022-04-27 22:50:01,208 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-27 22:50:01,208 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 15 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 44 [2022-04-27 22:50:01,208 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:50:01,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 15 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 22:50:01,211 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 59 transitions. [2022-04-27 22:50:01,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 15 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 22:50:01,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 59 transitions. [2022-04-27 22:50:01,214 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 59 transitions. [2022-04-27 22:50:01,263 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:50:01,264 INFO L225 Difference]: With dead ends: 98 [2022-04-27 22:50:01,265 INFO L226 Difference]: Without dead ends: 96 [2022-04-27 22:50:01,265 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 33 SyntacticMatches, 2 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 106 ImplicationChecksByTransitivity, 3.7s TimeCoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-27 22:50:01,265 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 21 mSDsluCounter, 185 mSDsCounter, 0 mSdLazyCounter, 308 mSolverCounterSat, 7 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 212 SdHoareTripleChecker+Invalid, 316 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 308 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.9s IncrementalHoareTripleChecker+Time [2022-04-27 22:50:01,265 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [23 Valid, 212 Invalid, 316 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 308 Invalid, 1 Unknown, 0 Unchecked, 2.9s Time] [2022-04-27 22:50:01,266 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-04-27 22:50:01,289 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 81. [2022-04-27 22:50:01,289 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:50:01,289 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 81 states, 59 states have (on average 1.1355932203389831) internal successors, (67), 62 states have internal predecessors, (67), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 22:50:01,290 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 81 states, 59 states have (on average 1.1355932203389831) internal successors, (67), 62 states have internal predecessors, (67), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 22:50:01,290 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 81 states, 59 states have (on average 1.1355932203389831) internal successors, (67), 62 states have internal predecessors, (67), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 22:50:01,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:50:01,292 INFO L93 Difference]: Finished difference Result 96 states and 109 transitions. [2022-04-27 22:50:01,292 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 109 transitions. [2022-04-27 22:50:01,292 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:50:01,292 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:50:01,292 INFO L74 IsIncluded]: Start isIncluded. First operand has 81 states, 59 states have (on average 1.1355932203389831) internal successors, (67), 62 states have internal predecessors, (67), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) Second operand 96 states. [2022-04-27 22:50:01,293 INFO L87 Difference]: Start difference. First operand has 81 states, 59 states have (on average 1.1355932203389831) internal successors, (67), 62 states have internal predecessors, (67), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) Second operand 96 states. [2022-04-27 22:50:01,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:50:01,294 INFO L93 Difference]: Finished difference Result 96 states and 109 transitions. [2022-04-27 22:50:01,295 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 109 transitions. [2022-04-27 22:50:01,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:50:01,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:50:01,295 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:50:01,295 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:50:01,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 81 states, 59 states have (on average 1.1355932203389831) internal successors, (67), 62 states have internal predecessors, (67), 13 states have call successors, (13), 9 states have call predecessors, (13), 8 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 22:50:01,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 92 transitions. [2022-04-27 22:50:01,297 INFO L78 Accepts]: Start accepts. Automaton has 81 states and 92 transitions. Word has length 44 [2022-04-27 22:50:01,297 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:50:01,297 INFO L495 AbstractCegarLoop]: Abstraction has 81 states and 92 transitions. [2022-04-27 22:50:01,297 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 1.9333333333333333) internal successors, (29), 15 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 22:50:01,297 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 92 transitions. [2022-04-27 22:50:01,298 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 22:50:01,298 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:50:01,298 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:50:01,314 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-27 22:50:01,507 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-27 22:50:01,507 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:50:01,508 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:50:01,508 INFO L85 PathProgramCache]: Analyzing trace with hash -1358410317, now seen corresponding path program 2 times [2022-04-27 22:50:01,508 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:50:01,508 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1067813399] [2022-04-27 22:50:01,508 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:50:01,508 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:50:01,520 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:50:01,521 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1149935013] [2022-04-27 22:50:01,521 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:50:01,521 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:50:01,521 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:50:01,522 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-27 22:50:01,522 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-27 22:50:01,562 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:50:01,562 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:50:01,563 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 43 conjunts are in the unsatisfiable core [2022-04-27 22:50:01,578 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:50:01,579 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:53:43,464 WARN L232 SmtUtils]: Spent 5.96s on a formula simplification. DAG size of input: 3 DAG size of output: 1 (called from [L 988] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2022-04-27 22:53:48,069 INFO L272 TraceCheckUtils]: 0: Hoare triple {2761#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2761#true} is VALID [2022-04-27 22:53:48,070 INFO L290 TraceCheckUtils]: 1: Hoare triple {2761#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2761#true} is VALID [2022-04-27 22:53:48,070 INFO L290 TraceCheckUtils]: 2: Hoare triple {2761#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2761#true} is VALID [2022-04-27 22:53:48,070 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2761#true} {2761#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2761#true} is VALID [2022-04-27 22:53:48,070 INFO L272 TraceCheckUtils]: 4: Hoare triple {2761#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2761#true} is VALID [2022-04-27 22:53:48,070 INFO L290 TraceCheckUtils]: 5: Hoare triple {2761#true} [71] mainENTRY-->L26: 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] {2761#true} is VALID [2022-04-27 22:53:48,070 INFO L272 TraceCheckUtils]: 6: Hoare triple {2761#true} [73] L26-->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] {2761#true} is VALID [2022-04-27 22:53:48,078 INFO L290 TraceCheckUtils]: 7: Hoare triple {2761#true} [75] 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] {2787#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 22:53:48,079 INFO L290 TraceCheckUtils]: 8: Hoare triple {2787#(= 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[] {2791#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 22:53:48,079 INFO L290 TraceCheckUtils]: 9: Hoare triple {2791#(not (= |assume_abort_if_not_#in~cond| 0))} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2791#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 22:53:48,079 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2791#(not (= |assume_abort_if_not_#in~cond| 0))} {2761#true} [98] assume_abort_if_notEXIT-->L26-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] {2798#(<= 1 main_~b~0)} is VALID [2022-04-27 22:53:48,080 INFO L290 TraceCheckUtils]: 11: Hoare triple {2798#(<= 1 main_~b~0)} [74] L26-1-->L32-2: 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] {2802#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:53:48,080 INFO L290 TraceCheckUtils]: 12: Hoare triple {2802#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2802#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:53:48,080 INFO L272 TraceCheckUtils]: 13: Hoare triple {2802#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [82] L33-->__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] {2761#true} is VALID [2022-04-27 22:53:48,080 INFO L290 TraceCheckUtils]: 14: Hoare triple {2761#true} [85] __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] {2761#true} is VALID [2022-04-27 22:53:48,080 INFO L290 TraceCheckUtils]: 15: Hoare triple {2761#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[] {2761#true} is VALID [2022-04-27 22:53:48,080 INFO L290 TraceCheckUtils]: 16: Hoare triple {2761#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2761#true} is VALID [2022-04-27 22:53:48,081 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {2761#true} {2802#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [100] __VERIFIER_assertEXIT-->L33-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] {2802#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:53:48,081 INFO L290 TraceCheckUtils]: 18: Hoare triple {2802#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [87] L33-1-->L37: 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[] {2802#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 22:53:48,082 INFO L290 TraceCheckUtils]: 19: Hoare triple {2802#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [91] L37-->L37-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] {2827#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:53:48,084 INFO L290 TraceCheckUtils]: 20: Hoare triple {2827#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} [96] L37-2-->L32-2: 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] {2831#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-27 22:53:48,084 INFO L290 TraceCheckUtils]: 21: Hoare triple {2831#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2831#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-27 22:53:48,084 INFO L272 TraceCheckUtils]: 22: Hoare triple {2831#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [82] L33-->__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] {2761#true} is VALID [2022-04-27 22:53:48,084 INFO L290 TraceCheckUtils]: 23: Hoare triple {2761#true} [85] __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] {2761#true} is VALID [2022-04-27 22:53:48,084 INFO L290 TraceCheckUtils]: 24: Hoare triple {2761#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[] {2761#true} is VALID [2022-04-27 22:53:48,085 INFO L290 TraceCheckUtils]: 25: Hoare triple {2761#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2761#true} is VALID [2022-04-27 22:53:48,085 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2761#true} {2831#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [100] __VERIFIER_assertEXIT-->L33-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] {2831#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-27 22:53:48,085 INFO L290 TraceCheckUtils]: 27: Hoare triple {2831#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [87] L33-1-->L37: 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[] {2853#(and (not (= main_~y~0 0)) (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-27 22:53:48,086 INFO L290 TraceCheckUtils]: 28: Hoare triple {2853#(and (not (= main_~y~0 0)) (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [92] L37-->L37-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[] {2857#(and (not (= main_~y~0 0)) (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (not (= (mod main_~y~0 2) 1)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-27 22:53:48,088 INFO L290 TraceCheckUtils]: 29: Hoare triple {2857#(and (not (= main_~y~0 0)) (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (not (= (mod main_~y~0 2) 1)) (= main_~x~0 (* main_~z~0 2)) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [96] L37-2-->L32-2: 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] {2861#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= (* main_~z~0 4) main_~x~0))} is VALID [2022-04-27 22:53:48,088 INFO L290 TraceCheckUtils]: 30: Hoare triple {2861#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= (* main_~z~0 4) main_~x~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2861#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= (* main_~z~0 4) main_~x~0))} is VALID [2022-04-27 22:53:48,088 INFO L272 TraceCheckUtils]: 31: Hoare triple {2861#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= (* main_~z~0 4) main_~x~0))} [82] L33-->__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] {2761#true} is VALID [2022-04-27 22:53:48,089 INFO L290 TraceCheckUtils]: 32: Hoare triple {2761#true} [85] __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] {2871#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:53:48,089 INFO L290 TraceCheckUtils]: 33: Hoare triple {2871#(= |__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[] {2875#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:53:48,089 INFO L290 TraceCheckUtils]: 34: Hoare triple {2875#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2875#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:53:48,090 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {2875#(not (= |__VERIFIER_assert_#in~cond| 0))} {2861#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= (* main_~z~0 4) main_~x~0))} [100] __VERIFIER_assertEXIT-->L33-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] {2882#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= (* main_~z~0 4) main_~x~0))} is VALID [2022-04-27 22:53:48,090 INFO L290 TraceCheckUtils]: 36: Hoare triple {2882#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= (* main_~z~0 4) main_~x~0))} [87] L33-1-->L37: 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[] {2882#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= (* main_~z~0 4) main_~x~0))} is VALID [2022-04-27 22:53:48,091 INFO L290 TraceCheckUtils]: 37: Hoare triple {2882#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= (* main_~z~0 4) main_~x~0))} [92] L37-->L37-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[] {2889#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= (* main_~z~0 4) main_~x~0))} is VALID [2022-04-27 22:53:48,095 INFO L290 TraceCheckUtils]: 38: Hoare triple {2889#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= (* main_~z~0 4) main_~x~0))} [96] L37-2-->L32-2: 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] {2893#(and (= (+ main_~z~0 (* (* main_~z~0 4) (div (div (+ (- 1) main_~b~0) 2) 2))) (* main_~b~0 main_~a~0)) (<= 1 (mod main_~b~0 2)) (= (div (div (div (+ (- 1) main_~b~0) 2) 2) 2) main_~y~0) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (not (= (mod (div (div (+ (- 1) main_~b~0) 2) 2) 2) 1)) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= main_~x~0 (* main_~z~0 8)))} is VALID [2022-04-27 22:53:48,095 INFO L290 TraceCheckUtils]: 39: Hoare triple {2893#(and (= (+ main_~z~0 (* (* main_~z~0 4) (div (div (+ (- 1) main_~b~0) 2) 2))) (* main_~b~0 main_~a~0)) (<= 1 (mod main_~b~0 2)) (= (div (div (div (+ (- 1) main_~b~0) 2) 2) 2) main_~y~0) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (not (= (mod (div (div (+ (- 1) main_~b~0) 2) 2) 2) 1)) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= main_~x~0 (* main_~z~0 8)))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2893#(and (= (+ main_~z~0 (* (* main_~z~0 4) (div (div (+ (- 1) main_~b~0) 2) 2))) (* main_~b~0 main_~a~0)) (<= 1 (mod main_~b~0 2)) (= (div (div (div (+ (- 1) main_~b~0) 2) 2) 2) main_~y~0) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (not (= (mod (div (div (+ (- 1) main_~b~0) 2) 2) 2) 1)) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= main_~x~0 (* main_~z~0 8)))} is VALID [2022-04-27 22:53:48,099 INFO L272 TraceCheckUtils]: 40: Hoare triple {2893#(and (= (+ main_~z~0 (* (* main_~z~0 4) (div (div (+ (- 1) main_~b~0) 2) 2))) (* main_~b~0 main_~a~0)) (<= 1 (mod main_~b~0 2)) (= (div (div (div (+ (- 1) main_~b~0) 2) 2) 2) main_~y~0) (not (= (div (+ (- 1) main_~b~0) 2) 0)) (not (= (mod (div (div (+ (- 1) main_~b~0) 2) 2) 2) 1)) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)) (= main_~x~0 (* main_~z~0 8)))} [82] L33-->__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] {2900#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:53:48,099 INFO L290 TraceCheckUtils]: 41: Hoare triple {2900#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {2904#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:53:48,099 INFO L290 TraceCheckUtils]: 42: Hoare triple {2904#(<= 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[] {2762#false} is VALID [2022-04-27 22:53:48,099 INFO L290 TraceCheckUtils]: 43: Hoare triple {2762#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2762#false} is VALID [2022-04-27 22:53:48,100 INFO L134 CoverageAnalysis]: Checked inductivity of 39 backedges. 11 proven. 22 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:53:48,100 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:56:31,946 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:56:31,946 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1067813399] [2022-04-27 22:56:31,946 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:56:31,946 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1149935013] [2022-04-27 22:56:31,946 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1149935013] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:56:31,946 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 22:56:31,946 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2022-04-27 22:56:31,946 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [630287088] [2022-04-27 22:56:31,946 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 22:56:31,947 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 1.6111111111111112) internal successors, (29), 16 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Word has length 44 [2022-04-27 22:56:31,947 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:56:31,947 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 1.6111111111111112) internal successors, (29), 16 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 22:56:31,984 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-27 22:56:31,984 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-27 22:56:31,984 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:56:31,985 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-27 22:56:31,985 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=445, Unknown=2, NotChecked=0, Total=552 [2022-04-27 22:56:31,985 INFO L87 Difference]: Start difference. First operand 81 states and 92 transitions. Second operand has 18 states, 18 states have (on average 1.6111111111111112) internal successors, (29), 16 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 22:56:38,811 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-27 22:56:47,785 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.71s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 22:56:51,022 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-27 22:56:52,610 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.50s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 22:57:00,950 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-27 22:57:09,477 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-27 22:57:11,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:57:11,896 INFO L93 Difference]: Finished difference Result 106 states and 118 transitions. [2022-04-27 22:57:11,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-27 22:57:11,897 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 1.6111111111111112) internal successors, (29), 16 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) Word has length 44 [2022-04-27 22:57:11,897 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:57:11,897 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 1.6111111111111112) internal successors, (29), 16 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 22:57:11,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 58 transitions. [2022-04-27 22:57:11,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 1.6111111111111112) internal successors, (29), 16 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 22:57:11,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 58 transitions. [2022-04-27 22:57:11,901 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 58 transitions. [2022-04-27 22:57:12,627 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:57:12,629 INFO L225 Difference]: With dead ends: 106 [2022-04-27 22:57:12,629 INFO L226 Difference]: Without dead ends: 104 [2022-04-27 22:57:12,629 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 36 SyntacticMatches, 3 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 200 ImplicationChecksByTransitivity, 12.4s TimeCoverageRelationStatistics Valid=122, Invalid=578, Unknown=2, NotChecked=0, Total=702 [2022-04-27 22:57:12,630 INFO L413 NwaCegarLoop]: 19 mSDtfsCounter, 35 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 319 mSolverCounterSat, 17 mSolverCounterUnsat, 3 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 22.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 37 SdHoareTripleChecker+Valid, 116 SdHoareTripleChecker+Invalid, 339 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 319 IncrementalHoareTripleChecker+Invalid, 3 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 22.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:57:12,630 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [37 Valid, 116 Invalid, 339 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 319 Invalid, 3 Unknown, 0 Unchecked, 22.1s Time] [2022-04-27 22:57:12,630 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 104 states. [2022-04-27 22:57:12,663 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 104 to 94. [2022-04-27 22:57:12,663 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:57:12,663 INFO L82 GeneralOperation]: Start isEquivalent. First operand 104 states. Second operand has 94 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 14 states have call successors, (14), 11 states have call predecessors, (14), 10 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 22:57:12,663 INFO L74 IsIncluded]: Start isIncluded. First operand 104 states. Second operand has 94 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 14 states have call successors, (14), 11 states have call predecessors, (14), 10 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 22:57:12,664 INFO L87 Difference]: Start difference. First operand 104 states. Second operand has 94 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 14 states have call successors, (14), 11 states have call predecessors, (14), 10 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 22:57:12,665 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:57:12,666 INFO L93 Difference]: Finished difference Result 104 states and 116 transitions. [2022-04-27 22:57:12,666 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 116 transitions. [2022-04-27 22:57:12,666 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:57:12,666 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:57:12,666 INFO L74 IsIncluded]: Start isIncluded. First operand has 94 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 14 states have call successors, (14), 11 states have call predecessors, (14), 10 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 104 states. [2022-04-27 22:57:12,666 INFO L87 Difference]: Start difference. First operand has 94 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 14 states have call successors, (14), 11 states have call predecessors, (14), 10 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 104 states. [2022-04-27 22:57:12,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:57:12,668 INFO L93 Difference]: Finished difference Result 104 states and 116 transitions. [2022-04-27 22:57:12,668 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 116 transitions. [2022-04-27 22:57:12,669 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:57:12,669 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:57:12,669 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:57:12,669 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:57:12,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 69 states have (on average 1.1304347826086956) internal successors, (78), 72 states have internal predecessors, (78), 14 states have call successors, (14), 11 states have call predecessors, (14), 10 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 22:57:12,671 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 105 transitions. [2022-04-27 22:57:12,671 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 105 transitions. Word has length 44 [2022-04-27 22:57:12,671 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:57:12,671 INFO L495 AbstractCegarLoop]: Abstraction has 94 states and 105 transitions. [2022-04-27 22:57:12,671 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 1.6111111111111112) internal successors, (29), 16 states have internal predecessors, (29), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 22:57:12,671 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 105 transitions. [2022-04-27 22:57:12,672 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-27 22:57:12,672 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:57:12,672 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:57:12,689 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-27 22:57:12,883 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-27 22:57:12,883 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:57:12,884 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:57:12,884 INFO L85 PathProgramCache]: Analyzing trace with hash -1689275670, now seen corresponding path program 3 times [2022-04-27 22:57:12,884 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:57:12,884 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [546236428] [2022-04-27 22:57:12,884 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:57:12,884 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:57:12,895 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:57:12,895 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [204333823] [2022-04-27 22:57:12,895 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:57:12,895 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:57:12,895 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:57:12,896 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-27 22:57:12,897 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-27 22:57:12,929 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-04-27 22:57:12,929 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:57:12,930 INFO L263 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 22:57:12,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:57:12,943 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:57:23,344 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 22:57:26,687 INFO L272 TraceCheckUtils]: 0: Hoare triple {3459#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:26,688 INFO L290 TraceCheckUtils]: 1: Hoare triple {3459#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3459#true} is VALID [2022-04-27 22:57:26,688 INFO L290 TraceCheckUtils]: 2: Hoare triple {3459#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:26,688 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3459#true} {3459#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:26,688 INFO L272 TraceCheckUtils]: 4: Hoare triple {3459#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:26,688 INFO L290 TraceCheckUtils]: 5: Hoare triple {3459#true} [71] mainENTRY-->L26: 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] {3459#true} is VALID [2022-04-27 22:57:26,688 INFO L272 TraceCheckUtils]: 6: Hoare triple {3459#true} [73] L26-->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] {3459#true} is VALID [2022-04-27 22:57:26,688 INFO L290 TraceCheckUtils]: 7: Hoare triple {3459#true} [75] 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] {3459#true} is VALID [2022-04-27 22:57:26,688 INFO L290 TraceCheckUtils]: 8: Hoare triple {3459#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[] {3459#true} is VALID [2022-04-27 22:57:26,688 INFO L290 TraceCheckUtils]: 9: Hoare triple {3459#true} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3459#true} {3459#true} [98] assume_abort_if_notEXIT-->L26-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] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L290 TraceCheckUtils]: 11: Hoare triple {3459#true} [74] L26-1-->L32-2: 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] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L290 TraceCheckUtils]: 12: Hoare triple {3459#true} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L272 TraceCheckUtils]: 13: Hoare triple {3459#true} [82] L33-->__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] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L290 TraceCheckUtils]: 14: Hoare triple {3459#true} [85] __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] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L290 TraceCheckUtils]: 15: Hoare triple {3459#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[] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L290 TraceCheckUtils]: 16: Hoare triple {3459#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {3459#true} {3459#true} [100] __VERIFIER_assertEXIT-->L33-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] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L290 TraceCheckUtils]: 18: Hoare triple {3459#true} [87] L33-1-->L37: 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[] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L290 TraceCheckUtils]: 19: Hoare triple {3459#true} [91] L37-->L37-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] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L290 TraceCheckUtils]: 20: Hoare triple {3459#true} [96] L37-2-->L32-2: 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] {3459#true} is VALID [2022-04-27 22:57:26,689 INFO L290 TraceCheckUtils]: 21: Hoare triple {3459#true} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:26,690 INFO L272 TraceCheckUtils]: 22: Hoare triple {3459#true} [82] L33-->__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] {3459#true} is VALID [2022-04-27 22:57:26,690 INFO L290 TraceCheckUtils]: 23: Hoare triple {3459#true} [85] __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] {3459#true} is VALID [2022-04-27 22:57:26,690 INFO L290 TraceCheckUtils]: 24: Hoare triple {3459#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[] {3459#true} is VALID [2022-04-27 22:57:26,690 INFO L290 TraceCheckUtils]: 25: Hoare triple {3459#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:26,690 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3459#true} {3459#true} [100] __VERIFIER_assertEXIT-->L33-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] {3459#true} is VALID [2022-04-27 22:57:26,690 INFO L290 TraceCheckUtils]: 27: Hoare triple {3459#true} [87] L33-1-->L37: 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[] {3459#true} is VALID [2022-04-27 22:57:26,690 INFO L290 TraceCheckUtils]: 28: Hoare triple {3459#true} [91] L37-->L37-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] {3459#true} is VALID [2022-04-27 22:57:26,690 INFO L290 TraceCheckUtils]: 29: Hoare triple {3459#true} [96] L37-2-->L32-2: 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] {3459#true} is VALID [2022-04-27 22:57:26,690 INFO L290 TraceCheckUtils]: 30: Hoare triple {3459#true} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:26,690 INFO L272 TraceCheckUtils]: 31: Hoare triple {3459#true} [82] L33-->__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] {3459#true} is VALID [2022-04-27 22:57:26,690 INFO L290 TraceCheckUtils]: 32: Hoare triple {3459#true} [85] __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] {3459#true} is VALID [2022-04-27 22:57:26,691 INFO L290 TraceCheckUtils]: 33: Hoare triple {3459#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[] {3459#true} is VALID [2022-04-27 22:57:26,691 INFO L290 TraceCheckUtils]: 34: Hoare triple {3459#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:26,691 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3459#true} {3459#true} [100] __VERIFIER_assertEXIT-->L33-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] {3459#true} is VALID [2022-04-27 22:57:26,691 INFO L290 TraceCheckUtils]: 36: Hoare triple {3459#true} [87] L33-1-->L37: 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[] {3572#(not (= main_~y~0 0))} is VALID [2022-04-27 22:57:26,692 INFO L290 TraceCheckUtils]: 37: Hoare triple {3572#(not (= main_~y~0 0))} [91] L37-->L37-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] {3576#(< 0 (+ main_~y~0 1))} is VALID [2022-04-27 22:57:26,693 INFO L290 TraceCheckUtils]: 38: Hoare triple {3576#(< 0 (+ main_~y~0 1))} [96] L37-2-->L32-2: 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] {3576#(< 0 (+ main_~y~0 1))} is VALID [2022-04-27 22:57:26,693 INFO L290 TraceCheckUtils]: 39: Hoare triple {3576#(< 0 (+ main_~y~0 1))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3576#(< 0 (+ main_~y~0 1))} is VALID [2022-04-27 22:57:26,693 INFO L272 TraceCheckUtils]: 40: Hoare triple {3576#(< 0 (+ main_~y~0 1))} [82] L33-->__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] {3459#true} is VALID [2022-04-27 22:57:26,693 INFO L290 TraceCheckUtils]: 41: Hoare triple {3459#true} [85] __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] {3589#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:57:26,694 INFO L290 TraceCheckUtils]: 42: Hoare triple {3589#(= |__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[] {3593#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:57:26,694 INFO L290 TraceCheckUtils]: 43: Hoare triple {3593#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3593#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:57:26,695 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {3593#(not (= |__VERIFIER_assert_#in~cond| 0))} {3576#(< 0 (+ main_~y~0 1))} [100] __VERIFIER_assertEXIT-->L33-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] {3600#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:57:26,695 INFO L290 TraceCheckUtils]: 45: Hoare triple {3600#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< 0 (+ main_~y~0 1)))} [87] L33-1-->L37: 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[] {3600#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:57:26,696 INFO L290 TraceCheckUtils]: 46: Hoare triple {3600#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< 0 (+ main_~y~0 1)))} [92] L37-->L37-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[] {3607#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-27 22:57:26,699 INFO L290 TraceCheckUtils]: 47: Hoare triple {3607#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (< 0 (+ main_~y~0 1)))} [96] L37-2-->L32-2: 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] {3611#(and (exists ((aux_div_v_main_~y~0_40_22 Int) (aux_mod_v_main_~y~0_40_22 Int)) (and (<= 0 aux_mod_v_main_~y~0_40_22) (< 0 (+ (* aux_div_v_main_~y~0_40_22 2) aux_mod_v_main_~y~0_40_22 1)) (not (= aux_mod_v_main_~y~0_40_22 1)) (< aux_mod_v_main_~y~0_40_22 2) (= (div (+ (* aux_div_v_main_~y~0_40_22 2) aux_mod_v_main_~y~0_40_22) 2) main_~y~0) (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* (div main_~x~0 2) (+ (* aux_div_v_main_~y~0_40_22 2) aux_mod_v_main_~y~0_40_22)))))) (= (mod main_~x~0 2) 0))} is VALID [2022-04-27 22:57:27,007 INFO L290 TraceCheckUtils]: 48: Hoare triple {3611#(and (exists ((aux_div_v_main_~y~0_40_22 Int) (aux_mod_v_main_~y~0_40_22 Int)) (and (<= 0 aux_mod_v_main_~y~0_40_22) (< 0 (+ (* aux_div_v_main_~y~0_40_22 2) aux_mod_v_main_~y~0_40_22 1)) (not (= aux_mod_v_main_~y~0_40_22 1)) (< aux_mod_v_main_~y~0_40_22 2) (= (div (+ (* aux_div_v_main_~y~0_40_22 2) aux_mod_v_main_~y~0_40_22) 2) main_~y~0) (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* (div main_~x~0 2) (+ (* aux_div_v_main_~y~0_40_22 2) aux_mod_v_main_~y~0_40_22)))))) (= (mod main_~x~0 2) 0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3615#(and (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* 2 (* (div main_~x~0 2) main_~y~0)))) (< 0 (+ main_~y~0 1)) (= (mod main_~x~0 2) 0))} is VALID [2022-04-27 22:57:27,008 INFO L272 TraceCheckUtils]: 49: Hoare triple {3615#(and (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* 2 (* (div main_~x~0 2) main_~y~0)))) (< 0 (+ main_~y~0 1)) (= (mod main_~x~0 2) 0))} [82] L33-->__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] {3619#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:57:27,009 INFO L290 TraceCheckUtils]: 50: Hoare triple {3619#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {3623#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:57:27,009 INFO L290 TraceCheckUtils]: 51: Hoare triple {3623#(<= 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[] {3460#false} is VALID [2022-04-27 22:57:27,009 INFO L290 TraceCheckUtils]: 52: Hoare triple {3460#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3460#false} is VALID [2022-04-27 22:57:27,009 INFO L134 CoverageAnalysis]: Checked inductivity of 70 backedges. 42 proven. 2 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-27 22:57:27,010 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:57:57,516 INFO L290 TraceCheckUtils]: 52: Hoare triple {3460#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3460#false} is VALID [2022-04-27 22:57:57,517 INFO L290 TraceCheckUtils]: 51: Hoare triple {3623#(<= 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[] {3460#false} is VALID [2022-04-27 22:57:57,522 INFO L290 TraceCheckUtils]: 50: Hoare triple {3619#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {3623#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:57:57,524 INFO L272 TraceCheckUtils]: 49: Hoare triple {3639#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [82] L33-->__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] {3619#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:57:57,524 INFO L290 TraceCheckUtils]: 48: Hoare triple {3639#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3639#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-27 22:57:57,529 INFO L290 TraceCheckUtils]: 47: Hoare triple {3646#(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))))} [96] L37-2-->L32-2: 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] {3639#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-27 22:57:57,531 INFO L290 TraceCheckUtils]: 46: Hoare triple {3650#(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] L37-->L37-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[] {3646#(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-27 22:57:57,532 INFO L290 TraceCheckUtils]: 45: Hoare triple {3650#(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)))))} [87] L33-1-->L37: 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[] {3650#(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-27 22:57:57,536 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {3593#(not (= |__VERIFIER_assert_#in~cond| 0))} {3657#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} [100] __VERIFIER_assertEXIT-->L33-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] {3650#(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-27 22:57:57,536 INFO L290 TraceCheckUtils]: 43: Hoare triple {3593#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3593#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:57:57,538 INFO L290 TraceCheckUtils]: 42: Hoare triple {3667#(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[] {3593#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:57:57,539 INFO L290 TraceCheckUtils]: 41: Hoare triple {3459#true} [85] __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] {3667#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:57:57,539 INFO L272 TraceCheckUtils]: 40: Hoare triple {3657#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} [82] L33-->__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] {3459#true} is VALID [2022-04-27 22:57:57,539 INFO L290 TraceCheckUtils]: 39: Hoare triple {3657#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3657#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} is VALID [2022-04-27 22:57:57,540 INFO L290 TraceCheckUtils]: 38: Hoare triple {3677#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} [96] L37-2-->L32-2: 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] {3657#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} is VALID [2022-04-27 22:57:57,541 INFO L290 TraceCheckUtils]: 37: Hoare triple {3459#true} [91] L37-->L37-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] {3677#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-27 22:57:57,541 INFO L290 TraceCheckUtils]: 36: Hoare triple {3459#true} [87] L33-1-->L37: 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[] {3459#true} is VALID [2022-04-27 22:57:57,541 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3459#true} {3459#true} [100] __VERIFIER_assertEXIT-->L33-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] {3459#true} is VALID [2022-04-27 22:57:57,541 INFO L290 TraceCheckUtils]: 34: Hoare triple {3459#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L290 TraceCheckUtils]: 33: Hoare triple {3459#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[] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L290 TraceCheckUtils]: 32: Hoare triple {3459#true} [85] __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] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L272 TraceCheckUtils]: 31: Hoare triple {3459#true} [82] L33-->__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] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L290 TraceCheckUtils]: 30: Hoare triple {3459#true} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L290 TraceCheckUtils]: 29: Hoare triple {3459#true} [96] L37-2-->L32-2: 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] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L290 TraceCheckUtils]: 28: Hoare triple {3459#true} [91] L37-->L37-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] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L290 TraceCheckUtils]: 27: Hoare triple {3459#true} [87] L33-1-->L37: 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[] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3459#true} {3459#true} [100] __VERIFIER_assertEXIT-->L33-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] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L290 TraceCheckUtils]: 25: Hoare triple {3459#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L290 TraceCheckUtils]: 24: Hoare triple {3459#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[] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L290 TraceCheckUtils]: 23: Hoare triple {3459#true} [85] __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] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L272 TraceCheckUtils]: 22: Hoare triple {3459#true} [82] L33-->__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] {3459#true} is VALID [2022-04-27 22:57:57,542 INFO L290 TraceCheckUtils]: 21: Hoare triple {3459#true} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L290 TraceCheckUtils]: 20: Hoare triple {3459#true} [96] L37-2-->L32-2: 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] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L290 TraceCheckUtils]: 19: Hoare triple {3459#true} [91] L37-->L37-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] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L290 TraceCheckUtils]: 18: Hoare triple {3459#true} [87] L33-1-->L37: 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[] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {3459#true} {3459#true} [100] __VERIFIER_assertEXIT-->L33-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] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L290 TraceCheckUtils]: 16: Hoare triple {3459#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L290 TraceCheckUtils]: 15: Hoare triple {3459#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[] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L290 TraceCheckUtils]: 14: Hoare triple {3459#true} [85] __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] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L272 TraceCheckUtils]: 13: Hoare triple {3459#true} [82] L33-->__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] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L290 TraceCheckUtils]: 12: Hoare triple {3459#true} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L290 TraceCheckUtils]: 11: Hoare triple {3459#true} [74] L26-1-->L32-2: 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] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3459#true} {3459#true} [98] assume_abort_if_notEXIT-->L26-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] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L290 TraceCheckUtils]: 9: Hoare triple {3459#true} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:57,543 INFO L290 TraceCheckUtils]: 8: Hoare triple {3459#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[] {3459#true} is VALID [2022-04-27 22:57:57,544 INFO L290 TraceCheckUtils]: 7: Hoare triple {3459#true} [75] 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] {3459#true} is VALID [2022-04-27 22:57:57,544 INFO L272 TraceCheckUtils]: 6: Hoare triple {3459#true} [73] L26-->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] {3459#true} is VALID [2022-04-27 22:57:57,544 INFO L290 TraceCheckUtils]: 5: Hoare triple {3459#true} [71] mainENTRY-->L26: 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] {3459#true} is VALID [2022-04-27 22:57:57,544 INFO L272 TraceCheckUtils]: 4: Hoare triple {3459#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:57,544 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3459#true} {3459#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:57,544 INFO L290 TraceCheckUtils]: 2: Hoare triple {3459#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:57,544 INFO L290 TraceCheckUtils]: 1: Hoare triple {3459#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3459#true} is VALID [2022-04-27 22:57:57,544 INFO L272 TraceCheckUtils]: 0: Hoare triple {3459#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3459#true} is VALID [2022-04-27 22:57:57,544 INFO L134 CoverageAnalysis]: Checked inductivity of 70 backedges. 38 proven. 4 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-27 22:57:57,544 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:57:57,545 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [546236428] [2022-04-27 22:57:57,545 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 22:57:57,545 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [204333823] [2022-04-27 22:57:57,545 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [204333823] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:57:57,545 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 22:57:57,545 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 11] total 18 [2022-04-27 22:57:57,545 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [685805421] [2022-04-27 22:57:57,545 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 22:57:57,545 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 2.176470588235294) internal successors, (37), 17 states have internal predecessors, (37), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 53 [2022-04-27 22:57:57,546 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:57:57,546 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 17 states have (on average 2.176470588235294) internal successors, (37), 17 states have internal predecessors, (37), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 22:57:57,836 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:57:57,836 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-27 22:57:57,836 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:57:57,837 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-27 22:57:57,837 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=64, Invalid=240, Unknown=2, NotChecked=0, Total=306 [2022-04-27 22:57:57,837 INFO L87 Difference]: Start difference. First operand 94 states and 105 transitions. Second operand has 18 states, 17 states have (on average 2.176470588235294) internal successors, (37), 17 states have internal predecessors, (37), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 22:57:59,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:57:59,291 INFO L93 Difference]: Finished difference Result 114 states and 128 transitions. [2022-04-27 22:57:59,291 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 22:57:59,291 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 2.176470588235294) internal successors, (37), 17 states have internal predecessors, (37), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 53 [2022-04-27 22:57:59,291 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:57:59,291 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 2.176470588235294) internal successors, (37), 17 states have internal predecessors, (37), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 22:57:59,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 45 transitions. [2022-04-27 22:57:59,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 2.176470588235294) internal successors, (37), 17 states have internal predecessors, (37), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 22:57:59,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 45 transitions. [2022-04-27 22:57:59,293 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 45 transitions. [2022-04-27 22:57:59,336 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:57:59,337 INFO L225 Difference]: With dead ends: 114 [2022-04-27 22:57:59,337 INFO L226 Difference]: Without dead ends: 50 [2022-04-27 22:57:59,337 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 113 GetRequests, 90 SyntacticMatches, 1 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 92 ImplicationChecksByTransitivity, 7.1s TimeCoverageRelationStatistics Valid=121, Invalid=429, Unknown=2, NotChecked=0, Total=552 [2022-04-27 22:57:59,338 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 23 mSDsluCounter, 155 mSDsCounter, 0 mSdLazyCounter, 193 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 25 SdHoareTripleChecker+Valid, 175 SdHoareTripleChecker+Invalid, 220 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 193 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 9 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-27 22:57:59,338 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [25 Valid, 175 Invalid, 220 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 193 Invalid, 0 Unknown, 9 Unchecked, 0.5s Time] [2022-04-27 22:57:59,339 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-27 22:57:59,348 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 48. [2022-04-27 22:57:59,348 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:57:59,348 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 48 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 22:57:59,348 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 48 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 22:57:59,348 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 48 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 22:57:59,349 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:57:59,349 INFO L93 Difference]: Finished difference Result 50 states and 52 transitions. [2022-04-27 22:57:59,350 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 52 transitions. [2022-04-27 22:57:59,350 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:57:59,350 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:57:59,350 INFO L74 IsIncluded]: Start isIncluded. First operand has 48 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-27 22:57:59,350 INFO L87 Difference]: Start difference. First operand has 48 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-27 22:57:59,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:57:59,359 INFO L93 Difference]: Finished difference Result 50 states and 52 transitions. [2022-04-27 22:57:59,359 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 52 transitions. [2022-04-27 22:57:59,359 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:57:59,359 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:57:59,359 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:57:59,359 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:57:59,360 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 22:57:59,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 50 transitions. [2022-04-27 22:57:59,362 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 50 transitions. Word has length 53 [2022-04-27 22:57:59,362 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:57:59,362 INFO L495 AbstractCegarLoop]: Abstraction has 48 states and 50 transitions. [2022-04-27 22:57:59,362 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 17 states have (on average 2.176470588235294) internal successors, (37), 17 states have internal predecessors, (37), 5 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 22:57:59,362 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 50 transitions. [2022-04-27 22:57:59,362 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-27 22:57:59,363 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:57:59,363 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 5, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:57:59,380 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-27 22:57:59,563 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-27 22:57:59,563 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:57:59,564 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:57:59,564 INFO L85 PathProgramCache]: Analyzing trace with hash 1043440105, now seen corresponding path program 2 times [2022-04-27 22:57:59,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:57:59,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [31393656] [2022-04-27 22:57:59,564 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:57:59,564 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:57:59,573 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 22:57:59,573 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1579841955] [2022-04-27 22:57:59,573 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:57:59,573 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:57:59,573 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:57:59,574 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-27 22:57:59,575 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-27 22:57:59,618 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:57:59,619 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:57:59,620 INFO L263 TraceCheckSpWp]: Trace formula consists of 136 conjuncts, 41 conjunts are in the unsatisfiable core [2022-04-27 22:57:59,633 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:57:59,634 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 23:00:03,860 INFO L272 TraceCheckUtils]: 0: Hoare triple {4130#true} [67] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4130#true} is VALID [2022-04-27 23:00:03,860 INFO L290 TraceCheckUtils]: 1: Hoare triple {4130#true} [69] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {4130#true} is VALID [2022-04-27 23:00:03,860 INFO L290 TraceCheckUtils]: 2: Hoare triple {4130#true} [72] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4130#true} is VALID [2022-04-27 23:00:03,860 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4130#true} {4130#true} [97] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4130#true} is VALID [2022-04-27 23:00:03,860 INFO L272 TraceCheckUtils]: 4: Hoare triple {4130#true} [68] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4130#true} is VALID [2022-04-27 23:00:03,860 INFO L290 TraceCheckUtils]: 5: Hoare triple {4130#true} [71] mainENTRY-->L26: 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] {4130#true} is VALID [2022-04-27 23:00:03,861 INFO L272 TraceCheckUtils]: 6: Hoare triple {4130#true} [73] L26-->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] {4130#true} is VALID [2022-04-27 23:00:03,861 INFO L290 TraceCheckUtils]: 7: Hoare triple {4130#true} [75] 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] {4156#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 23:00:03,861 INFO L290 TraceCheckUtils]: 8: Hoare triple {4156#(= 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[] {4160#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 23:00:03,862 INFO L290 TraceCheckUtils]: 9: Hoare triple {4160#(not (= |assume_abort_if_not_#in~cond| 0))} [83] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4160#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 23:00:03,862 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4160#(not (= |assume_abort_if_not_#in~cond| 0))} {4130#true} [98] assume_abort_if_notEXIT-->L26-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] {4167#(<= 1 main_~b~0)} is VALID [2022-04-27 23:00:03,862 INFO L290 TraceCheckUtils]: 11: Hoare triple {4167#(<= 1 main_~b~0)} [74] L26-1-->L32-2: 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] {4171#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 23:00:03,863 INFO L290 TraceCheckUtils]: 12: Hoare triple {4171#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4171#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 23:00:03,863 INFO L272 TraceCheckUtils]: 13: Hoare triple {4171#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [82] L33-->__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] {4130#true} is VALID [2022-04-27 23:00:03,863 INFO L290 TraceCheckUtils]: 14: Hoare triple {4130#true} [85] __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] {4181#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 23:00:03,864 INFO L290 TraceCheckUtils]: 15: Hoare triple {4181#(= |__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[] {4185#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 23:00:03,864 INFO L290 TraceCheckUtils]: 16: Hoare triple {4185#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4185#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 23:00:03,864 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {4185#(not (= |__VERIFIER_assert_#in~cond| 0))} {4171#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [100] __VERIFIER_assertEXIT-->L33-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] {4192#(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-27 23:00:03,865 INFO L290 TraceCheckUtils]: 18: Hoare triple {4192#(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))} [87] L33-1-->L37: 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[] {4192#(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-27 23:00:03,866 INFO L290 TraceCheckUtils]: 19: Hoare triple {4192#(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] L37-->L37-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[] {4199#(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-27 23:00:03,867 INFO L290 TraceCheckUtils]: 20: Hoare triple {4199#(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))} [96] L37-2-->L32-2: 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] {4203#(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-27 23:00:03,867 INFO L290 TraceCheckUtils]: 21: Hoare triple {4203#(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] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4203#(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-27 23:00:03,867 INFO L272 TraceCheckUtils]: 22: Hoare triple {4203#(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)))} [82] L33-->__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] {4130#true} is VALID [2022-04-27 23:00:03,867 INFO L290 TraceCheckUtils]: 23: Hoare triple {4130#true} [85] __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] {4130#true} is VALID [2022-04-27 23:00:03,868 INFO L290 TraceCheckUtils]: 24: Hoare triple {4130#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[] {4130#true} is VALID [2022-04-27 23:00:03,868 INFO L290 TraceCheckUtils]: 25: Hoare triple {4130#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4130#true} is VALID [2022-04-27 23:00:03,868 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4130#true} {4203#(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)))} [100] __VERIFIER_assertEXIT-->L33-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] {4203#(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-27 23:00:03,869 INFO L290 TraceCheckUtils]: 27: Hoare triple {4203#(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] L33-1-->L37: 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[] {4203#(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-27 23:00:03,869 INFO L290 TraceCheckUtils]: 28: Hoare triple {4203#(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)))} [92] L37-->L37-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[] {4228#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-27 23:00:03,871 INFO L290 TraceCheckUtils]: 29: Hoare triple {4228#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} [96] L37-2-->L32-2: 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] {4232#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-27 23:00:03,871 INFO L290 TraceCheckUtils]: 30: Hoare triple {4232#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4232#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-27 23:00:03,871 INFO L272 TraceCheckUtils]: 31: Hoare triple {4232#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} [82] L33-->__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] {4130#true} is VALID [2022-04-27 23:00:03,871 INFO L290 TraceCheckUtils]: 32: Hoare triple {4130#true} [85] __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] {4130#true} is VALID [2022-04-27 23:00:03,871 INFO L290 TraceCheckUtils]: 33: Hoare triple {4130#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[] {4130#true} is VALID [2022-04-27 23:00:03,872 INFO L290 TraceCheckUtils]: 34: Hoare triple {4130#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4130#true} is VALID [2022-04-27 23:00:03,872 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {4130#true} {4232#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} [100] __VERIFIER_assertEXIT-->L33-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] {4232#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-27 23:00:03,872 INFO L290 TraceCheckUtils]: 36: Hoare triple {4232#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} [87] L33-1-->L37: 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[] {4232#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-27 23:00:03,874 INFO L290 TraceCheckUtils]: 37: Hoare triple {4232#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} [92] L37-->L37-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[] {4257#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod main_~y~0 2) 1)) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-27 23:00:03,875 INFO L290 TraceCheckUtils]: 38: Hoare triple {4257#(and (= main_~z~0 0) (= (* main_~a~0 4) main_~x~0) (not (= (mod main_~y~0 2) 1)) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~y~0 (div (div main_~b~0 2) 2)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} [96] L37-2-->L32-2: 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] {4261#(and (= main_~z~0 0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~x~0 (* main_~a~0 8)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (div (div (div main_~b~0 2) 2) 2) main_~y~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} is VALID [2022-04-27 23:00:03,875 INFO L290 TraceCheckUtils]: 39: Hoare triple {4261#(and (= main_~z~0 0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~x~0 (* main_~a~0 8)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (div (div (div main_~b~0 2) 2) 2) main_~y~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4261#(and (= main_~z~0 0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~x~0 (* main_~a~0 8)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (div (div (div main_~b~0 2) 2) 2) main_~y~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} is VALID [2022-04-27 23:00:03,876 INFO L272 TraceCheckUtils]: 40: Hoare triple {4261#(and (= main_~z~0 0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~x~0 (* main_~a~0 8)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (div (div (div main_~b~0 2) 2) 2) main_~y~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} [82] L33-->__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] {4130#true} is VALID [2022-04-27 23:00:03,876 INFO L290 TraceCheckUtils]: 41: Hoare triple {4130#true} [85] __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] {4130#true} is VALID [2022-04-27 23:00:03,876 INFO L290 TraceCheckUtils]: 42: Hoare triple {4130#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[] {4130#true} is VALID [2022-04-27 23:00:03,876 INFO L290 TraceCheckUtils]: 43: Hoare triple {4130#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4130#true} is VALID [2022-04-27 23:00:03,876 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {4130#true} {4261#(and (= main_~z~0 0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~x~0 (* main_~a~0 8)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (div (div (div main_~b~0 2) 2) 2) main_~y~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} [100] __VERIFIER_assertEXIT-->L33-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] {4261#(and (= main_~z~0 0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~x~0 (* main_~a~0 8)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (div (div (div main_~b~0 2) 2) 2) main_~y~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} is VALID [2022-04-27 23:00:03,877 INFO L290 TraceCheckUtils]: 45: Hoare triple {4261#(and (= main_~z~0 0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~x~0 (* main_~a~0 8)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (div (div (div main_~b~0 2) 2) 2) main_~y~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} [87] L33-1-->L37: 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[] {4261#(and (= main_~z~0 0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~x~0 (* main_~a~0 8)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (div (div (div main_~b~0 2) 2) 2) main_~y~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} is VALID [2022-04-27 23:00:03,878 INFO L290 TraceCheckUtils]: 46: Hoare triple {4261#(and (= main_~z~0 0) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~x~0 (* main_~a~0 8)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (div (div (div main_~b~0 2) 2) 2) main_~y~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} [92] L37-->L37-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[] {4286#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~x~0 (* main_~a~0 8)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (div (div (div main_~b~0 2) 2) 2) main_~y~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} is VALID [2022-04-27 23:00:03,879 INFO L290 TraceCheckUtils]: 47: Hoare triple {4286#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (not (= (mod (div main_~b~0 2) 2) 1)) (= main_~x~0 (* main_~a~0 8)) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (div (div (div main_~b~0 2) 2) 2) main_~y~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} [96] L37-2-->L32-2: 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] {4290#(and (= main_~z~0 0) (= (* main_~a~0 16) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (not (= (mod (div (div (div main_~b~0 2) 2) 2) 2) 1)) (not (= (mod main_~b~0 2) 1)) (= (div (div (div (div main_~b~0 2) 2) 2) 2) main_~y~0) (<= 1 main_~b~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} is VALID [2022-04-27 23:00:03,880 INFO L290 TraceCheckUtils]: 48: Hoare triple {4290#(and (= main_~z~0 0) (= (* main_~a~0 16) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (not (= (mod (div (div (div main_~b~0 2) 2) 2) 2) 1)) (not (= (mod main_~b~0 2) 1)) (= (div (div (div (div main_~b~0 2) 2) 2) 2) main_~y~0) (<= 1 main_~b~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} [78] L32-2-->L33: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4290#(and (= main_~z~0 0) (= (* main_~a~0 16) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (not (= (mod (div (div (div main_~b~0 2) 2) 2) 2) 1)) (not (= (mod main_~b~0 2) 1)) (= (div (div (div (div main_~b~0 2) 2) 2) 2) main_~y~0) (<= 1 main_~b~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} is VALID [2022-04-27 23:00:03,884 INFO L272 TraceCheckUtils]: 49: Hoare triple {4290#(and (= main_~z~0 0) (= (* main_~a~0 16) main_~x~0) (not (= (mod (div main_~b~0 2) 2) 1)) (not (= (mod (div (div (div main_~b~0 2) 2) 2) 2) 1)) (not (= (mod main_~b~0 2) 1)) (= (div (div (div (div main_~b~0 2) 2) 2) 2) main_~y~0) (<= 1 main_~b~0) (not (= (mod (div (div main_~b~0 2) 2) 2) 1)))} [82] L33-->__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] {4297#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 23:00:03,884 INFO L290 TraceCheckUtils]: 50: Hoare triple {4297#(<= 1 |__VERIFIER_assert_#in~cond|)} [85] __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] {4301#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 23:00:03,885 INFO L290 TraceCheckUtils]: 51: Hoare triple {4301#(<= 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[] {4131#false} is VALID [2022-04-27 23:00:03,885 INFO L290 TraceCheckUtils]: 52: Hoare triple {4131#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4131#false} is VALID [2022-04-27 23:00:03,885 INFO L134 CoverageAnalysis]: Checked inductivity of 70 backedges. 7 proven. 48 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-27 23:00:03,885 INFO L328 TraceCheckSpWp]: Computing backward predicates...