/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 04:18:19,460 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 04:18:19,462 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 04:18:19,480 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 04:18:19,480 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 04:18:19,481 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 04:18:19,482 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 04:18:19,483 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 04:18:19,485 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 04:18:19,488 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 04:18:19,489 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 04:18:19,491 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 04:18:19,491 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 04:18:19,492 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 04:18:19,493 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 04:18:19,494 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 04:18:19,495 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 04:18:19,495 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 04:18:19,500 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 04:18:19,503 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 04:18:19,505 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 04:18:19,505 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 04:18:19,506 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 04:18:19,508 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 04:18:19,508 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 04:18:19,512 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 04:18:19,512 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 04:18:19,512 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 04:18:19,512 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 04:18:19,513 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 04:18:19,513 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 04:18:19,513 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 04:18:19,514 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 04:18:19,514 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 04:18:19,515 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 04:18:19,515 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 04:18:19,515 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 04:18:19,515 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 04:18:19,516 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 04:18:19,516 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 04:18:19,516 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 04:18:19,517 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 04:18:19,518 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-15 04:18:19,537 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 04:18:19,537 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 04:18:19,538 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-15 04:18:19,538 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-15 04:18:19,539 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-15 04:18:19,539 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-15 04:18:19,539 INFO L138 SettingsManager]: * Use SBE=true [2022-04-15 04:18:19,539 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 04:18:19,539 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 04:18:19,540 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 04:18:19,540 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 04:18:19,540 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 04:18:19,540 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 04:18:19,540 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 04:18:19,540 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 04:18:19,540 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 04:18:19,540 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 04:18:19,540 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 04:18:19,540 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 04:18:19,540 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 04:18:19,541 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 04:18:19,541 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-15 04:18:19,541 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-15 04:18:19,541 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-15 04:18:19,541 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-15 04:18:19,541 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 04:18:19,541 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-15 04:18:19,541 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-15 04:18:19,542 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-15 04:18:19,542 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-15 04:18:19,747 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 04:18:19,759 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 04:18:19,761 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 04:18:19,761 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 04:18:19,762 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 04:18:19,763 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound5.c [2022-04-15 04:18:19,798 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8e279ac8e/1c16fbee564c46478509f00a9ee525f9/FLAGa12ea3f7e [2022-04-15 04:18:20,146 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 04:18:20,146 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound5.c [2022-04-15 04:18:20,150 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8e279ac8e/1c16fbee564c46478509f00a9ee525f9/FLAGa12ea3f7e [2022-04-15 04:18:20,159 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8e279ac8e/1c16fbee564c46478509f00a9ee525f9 [2022-04-15 04:18:20,160 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 04:18:20,161 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-15 04:18:20,163 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 04:18:20,163 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 04:18:20,166 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 04:18:20,170 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 04:18:20" (1/1) ... [2022-04-15 04:18:20,171 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@12afbbc7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:18:20, skipping insertion in model container [2022-04-15 04:18:20,171 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 04:18:20" (1/1) ... [2022-04-15 04:18:20,176 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 04:18:20,188 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 04:18:20,353 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound5.c[537,550] [2022-04-15 04:18:20,386 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 04:18:20,397 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 04:18:20,407 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound5.c[537,550] [2022-04-15 04:18:20,418 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 04:18:20,428 INFO L208 MainTranslator]: Completed translation [2022-04-15 04:18:20,429 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:18:20 WrapperNode [2022-04-15 04:18:20,430 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 04:18:20,431 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 04:18:20,431 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 04:18:20,431 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 04:18:20,439 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:18:20" (1/1) ... [2022-04-15 04:18:20,439 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:18:20" (1/1) ... [2022-04-15 04:18:20,444 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:18:20" (1/1) ... [2022-04-15 04:18:20,444 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:18:20" (1/1) ... [2022-04-15 04:18:20,454 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:18:20" (1/1) ... [2022-04-15 04:18:20,459 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:18:20" (1/1) ... [2022-04-15 04:18:20,463 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:18:20" (1/1) ... [2022-04-15 04:18:20,464 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 04:18:20,465 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 04:18:20,465 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 04:18:20,465 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 04:18:20,466 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:18:20" (1/1) ... [2022-04-15 04:18:20,471 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 04:18:20,478 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:20,488 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-15 04:18:20,492 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-15 04:18:20,529 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 04:18:20,530 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 04:18:20,530 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 04:18:20,530 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 04:18:20,530 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 04:18:20,530 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 04:18:20,530 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 04:18:20,531 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 04:18:20,531 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 04:18:20,531 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 04:18:20,532 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 04:18:20,532 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 04:18:20,532 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 04:18:20,532 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 04:18:20,532 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 04:18:20,532 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 04:18:20,532 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 04:18:20,532 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 04:18:20,532 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 04:18:20,532 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 04:18:20,580 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 04:18:20,582 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 04:18:20,722 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 04:18:20,727 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 04:18:20,727 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-15 04:18:20,728 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 04:18:20 BoogieIcfgContainer [2022-04-15 04:18:20,728 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 04:18:20,729 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-15 04:18:20,729 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-15 04:18:20,736 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-15 04:18:20,739 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 04:18:20" (1/1) ... [2022-04-15 04:18:20,741 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-15 04:18:20,763 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 15.04 04:18:20 BasicIcfg [2022-04-15 04:18:20,764 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-15 04:18:20,765 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 04:18:20,765 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 04:18:20,767 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 04:18:20,767 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 04:18:20" (1/4) ... [2022-04-15 04:18:20,767 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6168a1e0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 04:18:20, skipping insertion in model container [2022-04-15 04:18:20,767 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 04:18:20" (2/4) ... [2022-04-15 04:18:20,767 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6168a1e0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 04:18:20, skipping insertion in model container [2022-04-15 04:18:20,768 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 04:18:20" (3/4) ... [2022-04-15 04:18:20,768 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6168a1e0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 15.04 04:18:20, skipping insertion in model container [2022-04-15 04:18:20,768 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 15.04 04:18:20" (4/4) ... [2022-04-15 04:18:20,768 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_unwindbound5.cqvasr [2022-04-15 04:18:20,773 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-15 04:18:20,774 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 04:18:20,800 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 04:18:20,804 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-15 04:18:20,805 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 04:18:20,830 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 04:18:20,833 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-15 04:18:20,833 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:20,834 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:18:20,834 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:20,840 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:20,841 INFO L85 PathProgramCache]: Analyzing trace with hash 1957529129, now seen corresponding path program 1 times [2022-04-15 04:18:20,847 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:20,847 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1306494088] [2022-04-15 04:18:20,847 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:20,848 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:20,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:20,999 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 04:18:21,004 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:21,016 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {33#true} is VALID [2022-04-15 04:18:21,016 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-15 04:18:21,017 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {33#true} {33#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-15 04:18:21,018 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 04:18:21,024 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:21,031 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {33#true} is VALID [2022-04-15 04:18:21,031 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-15 04:18:21,031 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-15 04:18:21,032 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {33#true} is VALID [2022-04-15 04:18:21,033 INFO L272 TraceCheckUtils]: 0: Hoare triple {33#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 04:18:21,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {33#true} is VALID [2022-04-15 04:18:21,034 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-15 04:18:21,034 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-15 04:18:21,034 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-15 04:18:21,034 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {33#true} is VALID [2022-04-15 04:18:21,034 INFO L272 TraceCheckUtils]: 6: Hoare triple {33#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {33#true} is VALID [2022-04-15 04:18:21,035 INFO L290 TraceCheckUtils]: 7: Hoare triple {33#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {33#true} is VALID [2022-04-15 04:18:21,035 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-15 04:18:21,035 INFO L290 TraceCheckUtils]: 9: Hoare triple {33#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-15 04:18:21,036 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33#true} {33#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {33#true} is VALID [2022-04-15 04:18:21,037 INFO L290 TraceCheckUtils]: 11: Hoare triple {33#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {33#true} is VALID [2022-04-15 04:18:21,037 INFO L290 TraceCheckUtils]: 12: Hoare triple {33#true} [77] L33-3-->L33-4: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-15 04:18:21,038 INFO L272 TraceCheckUtils]: 13: Hoare triple {34#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {34#false} is VALID [2022-04-15 04:18:21,038 INFO L290 TraceCheckUtils]: 14: Hoare triple {34#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {34#false} is VALID [2022-04-15 04:18:21,038 INFO L290 TraceCheckUtils]: 15: Hoare triple {34#false} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-15 04:18:21,039 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-15 04:18:21,039 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 04:18:21,039 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:21,040 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1306494088] [2022-04-15 04:18:21,040 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1306494088] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:18:21,040 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:18:21,041 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 04:18:21,042 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [793939391] [2022-04-15 04:18:21,042 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:18:21,046 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-15 04:18:21,047 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:21,050 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-15 04:18:21,072 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-15 04:18:21,073 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 04:18:21,074 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:21,093 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 04:18:21,094 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 04:18:21,096 INFO L87 Difference]: Start difference. First operand has 30 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 04:18:21,228 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,228 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-15 04:18:21,228 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 04:18:21,229 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-15 04:18:21,229 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:21,230 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-15 04:18:21,238 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-15 04:18:21,239 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-15 04:18:21,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-15 04:18:21,248 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 66 transitions. [2022-04-15 04:18:21,320 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:18:21,327 INFO L225 Difference]: With dead ends: 52 [2022-04-15 04:18:21,327 INFO L226 Difference]: Without dead ends: 26 [2022-04-15 04:18:21,329 INFO L912 BasicCegarLoop]: 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-15 04:18:21,332 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 35 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 04:18:21,334 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 35 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 04:18:21,344 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2022-04-15 04:18:21,355 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 25. [2022-04-15 04:18:21,356 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:21,356 INFO L82 GeneralOperation]: Start isEquivalent. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 04:18:21,357 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 04:18:21,358 INFO L87 Difference]: Start difference. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 04:18:21,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,361 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-15 04:18:21,361 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-15 04:18:21,362 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:21,362 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:21,364 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 26 states. [2022-04-15 04:18:21,365 INFO L87 Difference]: Start difference. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 26 states. [2022-04-15 04:18:21,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,371 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-15 04:18:21,371 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-15 04:18:21,371 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:21,372 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:21,372 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:21,372 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:21,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 04:18:21,374 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 28 transitions. [2022-04-15 04:18:21,375 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 28 transitions. Word has length 17 [2022-04-15 04:18:21,375 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:21,375 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 28 transitions. [2022-04-15 04:18:21,376 INFO L479 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-15 04:18:21,376 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-15 04:18:21,376 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 04:18:21,377 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:21,377 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:18:21,377 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 04:18:21,377 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:21,378 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:21,378 INFO L85 PathProgramCache]: Analyzing trace with hash 583261658, now seen corresponding path program 1 times [2022-04-15 04:18:21,378 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:21,378 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2139675367] [2022-04-15 04:18:21,378 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:21,378 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:21,411 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:21,412 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2027995280] [2022-04-15 04:18:21,412 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:21,412 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:21,412 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:21,413 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 04:18:21,414 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-15 04:18:21,451 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:21,452 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 04:18:21,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:21,464 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:21,638 INFO L272 TraceCheckUtils]: 0: Hoare triple {199#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199#true} is VALID [2022-04-15 04:18:21,639 INFO L290 TraceCheckUtils]: 1: Hoare triple {199#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,640 INFO L290 TraceCheckUtils]: 2: Hoare triple {207#(<= ~counter~0 0)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,640 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {207#(<= ~counter~0 0)} {199#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,641 INFO L272 TraceCheckUtils]: 4: Hoare triple {207#(<= ~counter~0 0)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,641 INFO L290 TraceCheckUtils]: 5: Hoare triple {207#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,642 INFO L272 TraceCheckUtils]: 6: Hoare triple {207#(<= ~counter~0 0)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,642 INFO L290 TraceCheckUtils]: 7: Hoare triple {207#(<= ~counter~0 0)} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,643 INFO L290 TraceCheckUtils]: 8: Hoare triple {207#(<= ~counter~0 0)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,643 INFO L290 TraceCheckUtils]: 9: Hoare triple {207#(<= ~counter~0 0)} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,644 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {207#(<= ~counter~0 0)} {207#(<= ~counter~0 0)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,644 INFO L290 TraceCheckUtils]: 11: Hoare triple {207#(<= ~counter~0 0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,645 INFO L290 TraceCheckUtils]: 12: Hoare triple {207#(<= ~counter~0 0)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {241#(<= |main_#t~post6| 0)} is VALID [2022-04-15 04:18:21,645 INFO L290 TraceCheckUtils]: 13: Hoare triple {241#(<= |main_#t~post6| 0)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {200#false} is VALID [2022-04-15 04:18:21,645 INFO L272 TraceCheckUtils]: 14: Hoare triple {200#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {200#false} is VALID [2022-04-15 04:18:21,646 INFO L290 TraceCheckUtils]: 15: Hoare triple {200#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {200#false} is VALID [2022-04-15 04:18:21,647 INFO L290 TraceCheckUtils]: 16: Hoare triple {200#false} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {200#false} is VALID [2022-04-15 04:18:21,647 INFO L290 TraceCheckUtils]: 17: Hoare triple {200#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {200#false} is VALID [2022-04-15 04:18:21,647 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 04:18:21,648 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 04:18:21,648 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:21,648 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2139675367] [2022-04-15 04:18:21,648 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:21,649 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2027995280] [2022-04-15 04:18:21,652 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2027995280] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:18:21,652 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:18:21,652 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 04:18:21,652 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2007824958] [2022-04-15 04:18:21,653 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:18:21,653 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-15 04:18:21,653 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:21,654 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 04:18:21,666 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:18:21,666 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 04:18:21,666 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:21,667 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 04:18:21,667 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 04:18:21,667 INFO L87 Difference]: Start difference. First operand 25 states and 28 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 04:18:21,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,719 INFO L93 Difference]: Finished difference Result 34 states and 37 transitions. [2022-04-15 04:18:21,719 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 04:18:21,719 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-15 04:18:21,719 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:21,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 04:18:21,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-15 04:18:21,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 04:18:21,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-15 04:18:21,722 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 37 transitions. [2022-04-15 04:18:21,748 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-15 04:18:21,749 INFO L225 Difference]: With dead ends: 34 [2022-04-15 04:18:21,749 INFO L226 Difference]: Without dead ends: 27 [2022-04-15 04:18:21,749 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 04:18:21,750 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 0 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 04:18:21,750 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 66 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 04:18:21,751 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-15 04:18:21,756 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-15 04:18:21,757 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:21,757 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 04:18:21,757 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 04:18:21,758 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 04:18:21,760 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,760 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-15 04:18:21,760 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-15 04:18:21,761 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:21,761 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:21,761 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 27 states. [2022-04-15 04:18:21,763 INFO L87 Difference]: Start difference. First operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 27 states. [2022-04-15 04:18:21,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,764 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-15 04:18:21,764 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-15 04:18:21,764 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:21,765 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:21,765 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:21,765 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:21,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 04:18:21,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-04-15 04:18:21,766 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 18 [2022-04-15 04:18:21,766 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:21,766 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-04-15 04:18:21,766 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 04:18:21,767 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-15 04:18:21,768 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 04:18:21,768 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:21,768 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:18:21,787 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-15 04:18:21,983 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:21,984 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:21,984 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:21,984 INFO L85 PathProgramCache]: Analyzing trace with hash 584363925, now seen corresponding path program 1 times [2022-04-15 04:18:21,984 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:21,984 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [131726302] [2022-04-15 04:18:21,985 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:21,985 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:21,995 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:21,995 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1790995773] [2022-04-15 04:18:21,995 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:21,996 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:21,996 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:22,000 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 04:18:22,001 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-15 04:18:22,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:22,034 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 04:18:22,040 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:22,041 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:22,169 INFO L272 TraceCheckUtils]: 0: Hoare triple {395#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-15 04:18:22,170 INFO L290 TraceCheckUtils]: 1: Hoare triple {395#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {395#true} is VALID [2022-04-15 04:18:22,170 INFO L290 TraceCheckUtils]: 2: Hoare triple {395#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-15 04:18:22,170 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {395#true} {395#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-15 04:18:22,170 INFO L272 TraceCheckUtils]: 4: Hoare triple {395#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-15 04:18:22,170 INFO L290 TraceCheckUtils]: 5: Hoare triple {395#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {395#true} is VALID [2022-04-15 04:18:22,171 INFO L272 TraceCheckUtils]: 6: Hoare triple {395#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {395#true} is VALID [2022-04-15 04:18:22,174 INFO L290 TraceCheckUtils]: 7: Hoare triple {395#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {395#true} is VALID [2022-04-15 04:18:22,174 INFO L290 TraceCheckUtils]: 8: Hoare triple {395#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-15 04:18:22,174 INFO L290 TraceCheckUtils]: 9: Hoare triple {395#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {395#true} is VALID [2022-04-15 04:18:22,175 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {395#true} {395#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {395#true} is VALID [2022-04-15 04:18:22,175 INFO L290 TraceCheckUtils]: 11: Hoare triple {395#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:22,176 INFO L290 TraceCheckUtils]: 12: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:22,178 INFO L290 TraceCheckUtils]: 13: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:22,179 INFO L272 TraceCheckUtils]: 14: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {443#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:18:22,180 INFO L290 TraceCheckUtils]: 15: Hoare triple {443#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {447#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:18:22,180 INFO L290 TraceCheckUtils]: 16: Hoare triple {447#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {396#false} is VALID [2022-04-15 04:18:22,180 INFO L290 TraceCheckUtils]: 17: Hoare triple {396#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {396#false} is VALID [2022-04-15 04:18:22,181 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 04:18:22,181 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 04:18:22,183 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:22,183 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [131726302] [2022-04-15 04:18:22,183 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:22,183 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1790995773] [2022-04-15 04:18:22,183 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1790995773] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:18:22,183 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:18:22,183 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 04:18:22,183 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [337366114] [2022-04-15 04:18:22,184 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:18:22,184 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 04:18:22,184 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:22,184 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 04:18:22,220 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:18:22,221 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 04:18:22,221 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:22,221 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 04:18:22,221 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 04:18:22,222 INFO L87 Difference]: Start difference. First operand 27 states and 30 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 04:18:22,411 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:22,411 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-15 04:18:22,412 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 04:18:22,412 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 04:18:22,412 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:22,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 04:18:22,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-15 04:18:22,417 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 04:18:22,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-15 04:18:22,419 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 43 transitions. [2022-04-15 04:18:22,457 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:18:22,458 INFO L225 Difference]: With dead ends: 38 [2022-04-15 04:18:22,458 INFO L226 Difference]: Without dead ends: 36 [2022-04-15 04:18:22,458 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 04:18:22,459 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 8 mSDsluCounter, 56 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 78 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 04:18:22,459 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 78 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 04:18:22,460 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-15 04:18:22,465 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 32. [2022-04-15 04:18:22,465 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:22,466 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 04:18:22,466 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 04:18:22,466 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 04:18:22,470 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:22,470 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-15 04:18:22,470 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-15 04:18:22,470 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:22,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:22,470 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 36 states. [2022-04-15 04:18:22,471 INFO L87 Difference]: Start difference. First operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 36 states. [2022-04-15 04:18:22,472 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:22,472 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-15 04:18:22,472 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-15 04:18:22,473 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:22,473 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:22,473 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:22,473 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:22,473 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 04:18:22,474 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 35 transitions. [2022-04-15 04:18:22,474 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 35 transitions. Word has length 18 [2022-04-15 04:18:22,474 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:22,475 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 35 transitions. [2022-04-15 04:18:22,475 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 04:18:22,475 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2022-04-15 04:18:22,476 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-15 04:18:22,476 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:22,476 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:18:22,492 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-15 04:18:22,684 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-15 04:18:22,685 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:22,685 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:22,685 INFO L85 PathProgramCache]: Analyzing trace with hash 1698322804, now seen corresponding path program 1 times [2022-04-15 04:18:22,685 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:22,685 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1410794813] [2022-04-15 04:18:22,685 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:22,686 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:22,695 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:22,695 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1755638305] [2022-04-15 04:18:22,695 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:22,695 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:22,696 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:22,696 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 04:18:22,711 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-15 04:18:22,739 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:22,740 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 04:18:22,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:22,750 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:22,833 INFO L272 TraceCheckUtils]: 0: Hoare triple {624#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-15 04:18:22,833 INFO L290 TraceCheckUtils]: 1: Hoare triple {624#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {624#true} is VALID [2022-04-15 04:18:22,833 INFO L290 TraceCheckUtils]: 2: Hoare triple {624#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-15 04:18:22,833 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {624#true} {624#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-15 04:18:22,833 INFO L272 TraceCheckUtils]: 4: Hoare triple {624#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-15 04:18:22,834 INFO L290 TraceCheckUtils]: 5: Hoare triple {624#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {624#true} is VALID [2022-04-15 04:18:22,834 INFO L272 TraceCheckUtils]: 6: Hoare triple {624#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {624#true} is VALID [2022-04-15 04:18:22,834 INFO L290 TraceCheckUtils]: 7: Hoare triple {624#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {650#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 04:18:22,835 INFO L290 TraceCheckUtils]: 8: Hoare triple {650#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {654#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:18:22,835 INFO L290 TraceCheckUtils]: 9: Hoare triple {654#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:18:22,835 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {654#(not (= |assume_abort_if_not_#in~cond| 0))} {624#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {661#(<= 1 main_~b~0)} is VALID [2022-04-15 04:18:22,836 INFO L290 TraceCheckUtils]: 11: Hoare triple {661#(<= 1 main_~b~0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {665#(<= 1 main_~y~0)} is VALID [2022-04-15 04:18:22,836 INFO L290 TraceCheckUtils]: 12: Hoare triple {665#(<= 1 main_~y~0)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {665#(<= 1 main_~y~0)} is VALID [2022-04-15 04:18:22,837 INFO L290 TraceCheckUtils]: 13: Hoare triple {665#(<= 1 main_~y~0)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {665#(<= 1 main_~y~0)} is VALID [2022-04-15 04:18:22,837 INFO L272 TraceCheckUtils]: 14: Hoare triple {665#(<= 1 main_~y~0)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {624#true} is VALID [2022-04-15 04:18:22,837 INFO L290 TraceCheckUtils]: 15: Hoare triple {624#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {624#true} is VALID [2022-04-15 04:18:22,837 INFO L290 TraceCheckUtils]: 16: Hoare triple {624#true} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-15 04:18:22,837 INFO L290 TraceCheckUtils]: 17: Hoare triple {624#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {624#true} is VALID [2022-04-15 04:18:22,838 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {624#true} {665#(<= 1 main_~y~0)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {665#(<= 1 main_~y~0)} is VALID [2022-04-15 04:18:22,838 INFO L290 TraceCheckUtils]: 19: Hoare triple {665#(<= 1 main_~y~0)} [91] L34-1-->L33-4: Formula: (= v_main_~y~0_7 0) InVars {main_~y~0=v_main_~y~0_7} OutVars{main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[] {625#false} is VALID [2022-04-15 04:18:22,838 INFO L272 TraceCheckUtils]: 20: Hoare triple {625#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {625#false} is VALID [2022-04-15 04:18:22,838 INFO L290 TraceCheckUtils]: 21: Hoare triple {625#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {625#false} is VALID [2022-04-15 04:18:22,838 INFO L290 TraceCheckUtils]: 22: Hoare triple {625#false} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {625#false} is VALID [2022-04-15 04:18:22,839 INFO L290 TraceCheckUtils]: 23: Hoare triple {625#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {625#false} is VALID [2022-04-15 04:18:22,839 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-15 04:18:22,839 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 04:18:22,839 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:22,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1410794813] [2022-04-15 04:18:22,839 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:22,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1755638305] [2022-04-15 04:18:22,840 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1755638305] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:18:22,840 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:18:22,840 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 04:18:22,840 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2116026655] [2022-04-15 04:18:22,840 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:18:22,840 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-15 04:18:22,840 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:22,841 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 04:18:22,854 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:18:22,854 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 04:18:22,854 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:22,854 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 04:18:22,854 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 04:18:22,855 INFO L87 Difference]: Start difference. First operand 32 states and 35 transitions. Second operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 04:18:22,991 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:22,993 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2022-04-15 04:18:22,993 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 04:18:22,994 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-15 04:18:22,994 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:22,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 04:18:22,995 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-15 04:18:22,995 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 04:18:22,996 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-15 04:18:22,997 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 43 transitions. [2022-04-15 04:18:23,034 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:18:23,035 INFO L225 Difference]: With dead ends: 42 [2022-04-15 04:18:23,036 INFO L226 Difference]: Without dead ends: 35 [2022-04-15 04:18:23,036 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-15 04:18:23,037 INFO L913 BasicCegarLoop]: 23 mSDtfsCounter, 17 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 88 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 04:18:23,037 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 88 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 04:18:23,037 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-15 04:18:23,049 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 33. [2022-04-15 04:18:23,049 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:23,050 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 04:18:23,050 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 04:18:23,050 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 04:18:23,051 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:23,051 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-15 04:18:23,052 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-15 04:18:23,052 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:23,052 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:23,052 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-15 04:18:23,052 INFO L87 Difference]: Start difference. First operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-15 04:18:23,054 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:23,054 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-15 04:18:23,054 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-15 04:18:23,054 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:23,054 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:23,054 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:23,054 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:23,055 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 04:18:23,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 36 transitions. [2022-04-15 04:18:23,056 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 36 transitions. Word has length 24 [2022-04-15 04:18:23,056 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:23,056 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 36 transitions. [2022-04-15 04:18:23,056 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 04:18:23,056 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 36 transitions. [2022-04-15 04:18:23,057 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 04:18:23,057 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:23,057 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:18:23,080 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-15 04:18:23,261 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:23,261 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:23,262 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:23,262 INFO L85 PathProgramCache]: Analyzing trace with hash 919545147, now seen corresponding path program 1 times [2022-04-15 04:18:23,262 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:23,262 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1474595235] [2022-04-15 04:18:23,262 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:23,262 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:23,272 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:23,275 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [904175238] [2022-04-15 04:18:23,275 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:23,275 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:23,275 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:23,276 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 04:18:23,277 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-15 04:18:23,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:23,311 INFO L263 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 04:18:23,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:23,334 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:23,461 INFO L272 TraceCheckUtils]: 0: Hoare triple {878#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-15 04:18:23,466 INFO L290 TraceCheckUtils]: 1: Hoare triple {878#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {886#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:23,466 INFO L290 TraceCheckUtils]: 2: Hoare triple {886#(<= ~counter~0 0)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:23,467 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {886#(<= ~counter~0 0)} {878#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:23,467 INFO L272 TraceCheckUtils]: 4: Hoare triple {886#(<= ~counter~0 0)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:23,467 INFO L290 TraceCheckUtils]: 5: Hoare triple {886#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {886#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:23,468 INFO L272 TraceCheckUtils]: 6: Hoare triple {886#(<= ~counter~0 0)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {886#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:23,468 INFO L290 TraceCheckUtils]: 7: Hoare triple {886#(<= ~counter~0 0)} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {886#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:23,469 INFO L290 TraceCheckUtils]: 8: Hoare triple {886#(<= ~counter~0 0)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:23,469 INFO L290 TraceCheckUtils]: 9: Hoare triple {886#(<= ~counter~0 0)} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {886#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:23,469 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {886#(<= ~counter~0 0)} {886#(<= ~counter~0 0)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {886#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:23,470 INFO L290 TraceCheckUtils]: 11: Hoare triple {886#(<= ~counter~0 0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {886#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:23,470 INFO L290 TraceCheckUtils]: 12: Hoare triple {886#(<= ~counter~0 0)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {920#(<= ~counter~0 1)} is VALID [2022-04-15 04:18:23,471 INFO L290 TraceCheckUtils]: 13: Hoare triple {920#(<= ~counter~0 1)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {920#(<= ~counter~0 1)} is VALID [2022-04-15 04:18:23,471 INFO L272 TraceCheckUtils]: 14: Hoare triple {920#(<= ~counter~0 1)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {920#(<= ~counter~0 1)} is VALID [2022-04-15 04:18:23,472 INFO L290 TraceCheckUtils]: 15: Hoare triple {920#(<= ~counter~0 1)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {920#(<= ~counter~0 1)} is VALID [2022-04-15 04:18:23,472 INFO L290 TraceCheckUtils]: 16: Hoare triple {920#(<= ~counter~0 1)} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {920#(<= ~counter~0 1)} is VALID [2022-04-15 04:18:23,472 INFO L290 TraceCheckUtils]: 17: Hoare triple {920#(<= ~counter~0 1)} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#(<= ~counter~0 1)} is VALID [2022-04-15 04:18:23,473 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {920#(<= ~counter~0 1)} {920#(<= ~counter~0 1)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {920#(<= ~counter~0 1)} is VALID [2022-04-15 04:18:23,475 INFO L290 TraceCheckUtils]: 19: Hoare triple {920#(<= ~counter~0 1)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {920#(<= ~counter~0 1)} is VALID [2022-04-15 04:18:23,475 INFO L290 TraceCheckUtils]: 20: Hoare triple {920#(<= ~counter~0 1)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {920#(<= ~counter~0 1)} is VALID [2022-04-15 04:18:23,476 INFO L290 TraceCheckUtils]: 21: Hoare triple {920#(<= ~counter~0 1)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {920#(<= ~counter~0 1)} is VALID [2022-04-15 04:18:23,476 INFO L290 TraceCheckUtils]: 22: Hoare triple {920#(<= ~counter~0 1)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {951#(<= |main_#t~post6| 1)} is VALID [2022-04-15 04:18:23,477 INFO L290 TraceCheckUtils]: 23: Hoare triple {951#(<= |main_#t~post6| 1)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {879#false} is VALID [2022-04-15 04:18:23,477 INFO L272 TraceCheckUtils]: 24: Hoare triple {879#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {879#false} is VALID [2022-04-15 04:18:23,477 INFO L290 TraceCheckUtils]: 25: Hoare triple {879#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {879#false} is VALID [2022-04-15 04:18:23,477 INFO L290 TraceCheckUtils]: 26: Hoare triple {879#false} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {879#false} is VALID [2022-04-15 04:18:23,477 INFO L290 TraceCheckUtils]: 27: Hoare triple {879#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#false} is VALID [2022-04-15 04:18:23,477 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 04:18:23,477 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:18:23,662 INFO L290 TraceCheckUtils]: 27: Hoare triple {879#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#false} is VALID [2022-04-15 04:18:23,662 INFO L290 TraceCheckUtils]: 26: Hoare triple {879#false} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {879#false} is VALID [2022-04-15 04:18:23,662 INFO L290 TraceCheckUtils]: 25: Hoare triple {879#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {879#false} is VALID [2022-04-15 04:18:23,662 INFO L272 TraceCheckUtils]: 24: Hoare triple {879#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {879#false} is VALID [2022-04-15 04:18:23,663 INFO L290 TraceCheckUtils]: 23: Hoare triple {979#(< |main_#t~post6| 5)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {879#false} is VALID [2022-04-15 04:18:23,663 INFO L290 TraceCheckUtils]: 22: Hoare triple {983#(< ~counter~0 5)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {979#(< |main_#t~post6| 5)} is VALID [2022-04-15 04:18:23,665 INFO L290 TraceCheckUtils]: 21: Hoare triple {983#(< ~counter~0 5)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {983#(< ~counter~0 5)} is VALID [2022-04-15 04:18:23,665 INFO L290 TraceCheckUtils]: 20: Hoare triple {983#(< ~counter~0 5)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {983#(< ~counter~0 5)} is VALID [2022-04-15 04:18:23,670 INFO L290 TraceCheckUtils]: 19: Hoare triple {983#(< ~counter~0 5)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {983#(< ~counter~0 5)} is VALID [2022-04-15 04:18:23,671 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {878#true} {983#(< ~counter~0 5)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {983#(< ~counter~0 5)} is VALID [2022-04-15 04:18:23,671 INFO L290 TraceCheckUtils]: 17: Hoare triple {878#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-15 04:18:23,671 INFO L290 TraceCheckUtils]: 16: Hoare triple {878#true} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-15 04:18:23,671 INFO L290 TraceCheckUtils]: 15: Hoare triple {878#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {878#true} is VALID [2022-04-15 04:18:23,671 INFO L272 TraceCheckUtils]: 14: Hoare triple {983#(< ~counter~0 5)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {878#true} is VALID [2022-04-15 04:18:23,672 INFO L290 TraceCheckUtils]: 13: Hoare triple {983#(< ~counter~0 5)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {983#(< ~counter~0 5)} is VALID [2022-04-15 04:18:23,672 INFO L290 TraceCheckUtils]: 12: Hoare triple {1014#(< ~counter~0 4)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {983#(< ~counter~0 5)} is VALID [2022-04-15 04:18:23,673 INFO L290 TraceCheckUtils]: 11: Hoare triple {1014#(< ~counter~0 4)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1014#(< ~counter~0 4)} is VALID [2022-04-15 04:18:23,673 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {878#true} {1014#(< ~counter~0 4)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1014#(< ~counter~0 4)} is VALID [2022-04-15 04:18:23,673 INFO L290 TraceCheckUtils]: 9: Hoare triple {878#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-15 04:18:23,673 INFO L290 TraceCheckUtils]: 8: Hoare triple {878#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-15 04:18:23,674 INFO L290 TraceCheckUtils]: 7: Hoare triple {878#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {878#true} is VALID [2022-04-15 04:18:23,674 INFO L272 TraceCheckUtils]: 6: Hoare triple {1014#(< ~counter~0 4)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {878#true} is VALID [2022-04-15 04:18:23,674 INFO L290 TraceCheckUtils]: 5: Hoare triple {1014#(< ~counter~0 4)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1014#(< ~counter~0 4)} is VALID [2022-04-15 04:18:23,675 INFO L272 TraceCheckUtils]: 4: Hoare triple {1014#(< ~counter~0 4)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1014#(< ~counter~0 4)} is VALID [2022-04-15 04:18:23,675 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1014#(< ~counter~0 4)} {878#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1014#(< ~counter~0 4)} is VALID [2022-04-15 04:18:23,676 INFO L290 TraceCheckUtils]: 2: Hoare triple {1014#(< ~counter~0 4)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1014#(< ~counter~0 4)} is VALID [2022-04-15 04:18:23,676 INFO L290 TraceCheckUtils]: 1: Hoare triple {878#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1014#(< ~counter~0 4)} is VALID [2022-04-15 04:18:23,677 INFO L272 TraceCheckUtils]: 0: Hoare triple {878#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#true} is VALID [2022-04-15 04:18:23,677 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 04:18:23,677 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:23,677 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1474595235] [2022-04-15 04:18:23,677 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:23,677 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [904175238] [2022-04-15 04:18:23,677 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [904175238] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:18:23,677 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:18:23,677 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-15 04:18:23,678 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1588708821] [2022-04-15 04:18:23,678 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:18:23,678 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 28 [2022-04-15 04:18:23,679 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:23,679 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 04:18:23,722 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:18:23,722 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 04:18:23,722 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:23,723 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 04:18:23,723 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-15 04:18:23,723 INFO L87 Difference]: Start difference. First operand 33 states and 36 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 04:18:23,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:23,929 INFO L93 Difference]: Finished difference Result 70 states and 80 transitions. [2022-04-15 04:18:23,929 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 04:18:23,930 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 28 [2022-04-15 04:18:23,931 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:23,931 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 04:18:23,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 80 transitions. [2022-04-15 04:18:23,943 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 04:18:23,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 80 transitions. [2022-04-15 04:18:23,947 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 80 transitions. [2022-04-15 04:18:23,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:18:24,000 INFO L225 Difference]: With dead ends: 70 [2022-04-15 04:18:24,000 INFO L226 Difference]: Without dead ends: 63 [2022-04-15 04:18:24,001 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-15 04:18:24,001 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 42 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 04:18:24,002 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [42 Valid, 102 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 04:18:24,002 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-04-15 04:18:24,025 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 59. [2022-04-15 04:18:24,025 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:24,026 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 04:18:24,026 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 04:18:24,026 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 04:18:24,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:24,031 INFO L93 Difference]: Finished difference Result 63 states and 71 transitions. [2022-04-15 04:18:24,031 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 71 transitions. [2022-04-15 04:18:24,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:24,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:24,032 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 63 states. [2022-04-15 04:18:24,032 INFO L87 Difference]: Start difference. First operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 63 states. [2022-04-15 04:18:24,054 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:24,054 INFO L93 Difference]: Finished difference Result 63 states and 71 transitions. [2022-04-15 04:18:24,054 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 71 transitions. [2022-04-15 04:18:24,055 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:24,055 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:24,055 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:24,055 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:24,055 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 04:18:24,062 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 69 transitions. [2022-04-15 04:18:24,062 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 69 transitions. Word has length 28 [2022-04-15 04:18:24,062 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:24,062 INFO L478 AbstractCegarLoop]: Abstraction has 59 states and 69 transitions. [2022-04-15 04:18:24,063 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 04:18:24,063 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-15 04:18:24,063 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 04:18:24,063 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:24,063 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:18:24,084 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-15 04:18:24,271 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:24,271 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:24,272 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:24,272 INFO L85 PathProgramCache]: Analyzing trace with hash 920647414, now seen corresponding path program 1 times [2022-04-15 04:18:24,272 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:24,272 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [816156418] [2022-04-15 04:18:24,272 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:24,272 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:24,294 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:24,294 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [704104634] [2022-04-15 04:18:24,294 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:24,294 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:24,294 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:24,305 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 04:18:24,306 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-15 04:18:24,357 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:24,358 INFO L263 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-15 04:18:24,373 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:24,374 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:26,960 INFO L272 TraceCheckUtils]: 0: Hoare triple {1360#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:18:26,960 INFO L290 TraceCheckUtils]: 1: Hoare triple {1360#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1360#true} is VALID [2022-04-15 04:18:26,960 INFO L290 TraceCheckUtils]: 2: Hoare triple {1360#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:18:26,960 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1360#true} {1360#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:18:26,960 INFO L272 TraceCheckUtils]: 4: Hoare triple {1360#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:18:26,960 INFO L290 TraceCheckUtils]: 5: Hoare triple {1360#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1360#true} is VALID [2022-04-15 04:18:26,961 INFO L272 TraceCheckUtils]: 6: Hoare triple {1360#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1360#true} is VALID [2022-04-15 04:18:26,961 INFO L290 TraceCheckUtils]: 7: Hoare triple {1360#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1360#true} is VALID [2022-04-15 04:18:26,961 INFO L290 TraceCheckUtils]: 8: Hoare triple {1360#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:18:26,961 INFO L290 TraceCheckUtils]: 9: Hoare triple {1360#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:18:26,961 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1360#true} {1360#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1360#true} is VALID [2022-04-15 04:18:26,962 INFO L290 TraceCheckUtils]: 11: Hoare triple {1360#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:26,962 INFO L290 TraceCheckUtils]: 12: Hoare triple {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:26,963 INFO L290 TraceCheckUtils]: 13: Hoare triple {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:26,963 INFO L272 TraceCheckUtils]: 14: Hoare triple {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1360#true} is VALID [2022-04-15 04:18:26,963 INFO L290 TraceCheckUtils]: 15: Hoare triple {1360#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1411#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:18:26,963 INFO L290 TraceCheckUtils]: 16: Hoare triple {1411#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:18:26,964 INFO L290 TraceCheckUtils]: 17: Hoare triple {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:18:26,965 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} {1398#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1422#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:26,965 INFO L290 TraceCheckUtils]: 19: Hoare triple {1422#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {1426#(and (not (= main_~y~0 0)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:26,966 INFO L290 TraceCheckUtils]: 20: Hoare triple {1426#(and (not (= main_~y~0 0)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {1430#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~b~0 main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:26,967 INFO L290 TraceCheckUtils]: 21: Hoare triple {1430#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~b~0 main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:18:26,967 INFO L290 TraceCheckUtils]: 22: Hoare triple {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:18:26,968 INFO L290 TraceCheckUtils]: 23: Hoare triple {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:18:28,970 WARN L272 TraceCheckUtils]: 24: Hoare triple {1434#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1444#(<= 1 |__VERIFIER_assert_#in~cond|)} is UNKNOWN [2022-04-15 04:18:28,971 INFO L290 TraceCheckUtils]: 25: Hoare triple {1444#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:18:28,971 INFO L290 TraceCheckUtils]: 26: Hoare triple {1448#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1361#false} is VALID [2022-04-15 04:18:28,971 INFO L290 TraceCheckUtils]: 27: Hoare triple {1361#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1361#false} is VALID [2022-04-15 04:18:28,972 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 04:18:28,972 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:19:39,306 INFO L290 TraceCheckUtils]: 27: Hoare triple {1361#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1361#false} is VALID [2022-04-15 04:19:39,307 INFO L290 TraceCheckUtils]: 26: Hoare triple {1448#(<= 1 __VERIFIER_assert_~cond)} [89] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1361#false} is VALID [2022-04-15 04:19:39,307 INFO L290 TraceCheckUtils]: 25: Hoare triple {1444#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:19:39,308 INFO L272 TraceCheckUtils]: 24: Hoare triple {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:19:39,309 INFO L290 TraceCheckUtils]: 23: Hoare triple {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:19:39,309 INFO L290 TraceCheckUtils]: 22: Hoare triple {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:19:39,313 INFO L290 TraceCheckUtils]: 21: Hoare triple {1474#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1464#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:19:39,316 INFO L290 TraceCheckUtils]: 20: Hoare triple {1478#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {1474#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-15 04:19:39,317 INFO L290 TraceCheckUtils]: 19: Hoare triple {1478#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {1478#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-15 04:19:39,621 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} {1360#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1478#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-15 04:19:39,621 INFO L290 TraceCheckUtils]: 17: Hoare triple {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:19:39,623 INFO L290 TraceCheckUtils]: 16: Hoare triple {1494#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1415#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:19:39,623 INFO L290 TraceCheckUtils]: 15: Hoare triple {1360#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1494#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 04:19:39,623 INFO L272 TraceCheckUtils]: 14: Hoare triple {1360#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1360#true} is VALID [2022-04-15 04:19:39,623 INFO L290 TraceCheckUtils]: 13: Hoare triple {1360#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1360#true} is VALID [2022-04-15 04:19:39,624 INFO L290 TraceCheckUtils]: 12: Hoare triple {1360#true} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1360#true} is VALID [2022-04-15 04:19:39,624 INFO L290 TraceCheckUtils]: 11: Hoare triple {1360#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1360#true} is VALID [2022-04-15 04:19:39,624 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1360#true} {1360#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1360#true} is VALID [2022-04-15 04:19:39,624 INFO L290 TraceCheckUtils]: 9: Hoare triple {1360#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:19:39,624 INFO L290 TraceCheckUtils]: 8: Hoare triple {1360#true} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:19:39,624 INFO L290 TraceCheckUtils]: 7: Hoare triple {1360#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1360#true} is VALID [2022-04-15 04:19:39,624 INFO L272 TraceCheckUtils]: 6: Hoare triple {1360#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1360#true} is VALID [2022-04-15 04:19:39,624 INFO L290 TraceCheckUtils]: 5: Hoare triple {1360#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1360#true} is VALID [2022-04-15 04:19:39,624 INFO L272 TraceCheckUtils]: 4: Hoare triple {1360#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:19:39,625 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1360#true} {1360#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:19:39,625 INFO L290 TraceCheckUtils]: 2: Hoare triple {1360#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:19:39,625 INFO L290 TraceCheckUtils]: 1: Hoare triple {1360#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1360#true} is VALID [2022-04-15 04:19:39,625 INFO L272 TraceCheckUtils]: 0: Hoare triple {1360#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1360#true} is VALID [2022-04-15 04:19:39,625 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 04:19:39,625 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:19:39,625 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [816156418] [2022-04-15 04:19:39,625 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:19:39,625 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [704104634] [2022-04-15 04:19:39,625 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [704104634] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:19:39,626 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:19:39,626 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9] total 15 [2022-04-15 04:19:39,626 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [996088911] [2022-04-15 04:19:39,626 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:19:39,627 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-15 04:19:39,627 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:19:39,628 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 04:19:40,935 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-15 04:19:40,936 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-15 04:19:40,936 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:19:40,936 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-15 04:19:40,936 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=166, Unknown=1, NotChecked=0, Total=210 [2022-04-15 04:19:40,937 INFO L87 Difference]: Start difference. First operand 59 states and 69 transitions. Second operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 04:19:48,019 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 04:19:58,311 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 04:20:03,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:03,566 INFO L93 Difference]: Finished difference Result 94 states and 109 transitions. [2022-04-15 04:20:03,566 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 04:20:03,567 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-15 04:20:03,567 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:20:03,567 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 04:20:03,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-15 04:20:03,569 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 04:20:03,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-15 04:20:03,570 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 60 transitions. [2022-04-15 04:20:06,237 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 59 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 04:20:06,239 INFO L225 Difference]: With dead ends: 94 [2022-04-15 04:20:06,239 INFO L226 Difference]: Without dead ends: 92 [2022-04-15 04:20:06,239 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 61 GetRequests, 41 SyntacticMatches, 2 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 57 ImplicationChecksByTransitivity, 13.6s TimeCoverageRelationStatistics Valid=78, Invalid=300, Unknown=2, NotChecked=0, Total=380 [2022-04-15 04:20:06,240 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 30 mSDsluCounter, 170 mSDsCounter, 0 mSdLazyCounter, 215 mSolverCounterSat, 19 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 8.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 192 SdHoareTripleChecker+Invalid, 236 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 215 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 8.8s IncrementalHoareTripleChecker+Time [2022-04-15 04:20:06,240 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 192 Invalid, 236 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 215 Invalid, 2 Unknown, 0 Unchecked, 8.8s Time] [2022-04-15 04:20:06,240 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 92 states. [2022-04-15 04:20:06,270 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 92 to 86. [2022-04-15 04:20:06,270 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:20:06,270 INFO L82 GeneralOperation]: Start isEquivalent. First operand 92 states. Second operand has 86 states, 63 states have (on average 1.1904761904761905) internal successors, (75), 69 states have internal predecessors, (75), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 6 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 04:20:06,270 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand has 86 states, 63 states have (on average 1.1904761904761905) internal successors, (75), 69 states have internal predecessors, (75), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 6 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 04:20:06,271 INFO L87 Difference]: Start difference. First operand 92 states. Second operand has 86 states, 63 states have (on average 1.1904761904761905) internal successors, (75), 69 states have internal predecessors, (75), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 6 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 04:20:06,273 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:06,273 INFO L93 Difference]: Finished difference Result 92 states and 105 transitions. [2022-04-15 04:20:06,273 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 105 transitions. [2022-04-15 04:20:06,273 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:20:06,273 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:20:06,274 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 63 states have (on average 1.1904761904761905) internal successors, (75), 69 states have internal predecessors, (75), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 6 states have call predecessors, (9), 9 states have call successors, (9) Second operand 92 states. [2022-04-15 04:20:06,274 INFO L87 Difference]: Start difference. First operand has 86 states, 63 states have (on average 1.1904761904761905) internal successors, (75), 69 states have internal predecessors, (75), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 6 states have call predecessors, (9), 9 states have call successors, (9) Second operand 92 states. [2022-04-15 04:20:06,276 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:06,276 INFO L93 Difference]: Finished difference Result 92 states and 105 transitions. [2022-04-15 04:20:06,276 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 105 transitions. [2022-04-15 04:20:06,277 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:20:06,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:20:06,277 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:20:06,277 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:20:06,277 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 63 states have (on average 1.1904761904761905) internal successors, (75), 69 states have internal predecessors, (75), 13 states have call successors, (13), 10 states have call predecessors, (13), 9 states have return successors, (9), 6 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 04:20:06,279 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 97 transitions. [2022-04-15 04:20:06,279 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 97 transitions. Word has length 28 [2022-04-15 04:20:06,279 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:20:06,279 INFO L478 AbstractCegarLoop]: Abstraction has 86 states and 97 transitions. [2022-04-15 04:20:06,279 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 13 states have internal predecessors, (30), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 04:20:06,280 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 97 transitions. [2022-04-15 04:20:06,280 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 04:20:06,280 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:20:06,280 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:20:06,298 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-15 04:20:06,480 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:20:06,481 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:20:06,481 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:20:06,482 INFO L85 PathProgramCache]: Analyzing trace with hash -1631509547, now seen corresponding path program 1 times [2022-04-15 04:20:06,482 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:20:06,482 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1334886204] [2022-04-15 04:20:06,482 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:20:06,482 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:20:06,500 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:20:06,500 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1483891394] [2022-04-15 04:20:06,500 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:20:06,501 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:20:06,501 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:20:06,505 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 04:20:06,506 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-15 04:20:06,542 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:20:06,548 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-15 04:20:06,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:20:06,561 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:20:07,497 INFO L272 TraceCheckUtils]: 0: Hoare triple {1984#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1984#true} is VALID [2022-04-15 04:20:07,497 INFO L290 TraceCheckUtils]: 1: Hoare triple {1984#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1984#true} is VALID [2022-04-15 04:20:07,497 INFO L290 TraceCheckUtils]: 2: Hoare triple {1984#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1984#true} is VALID [2022-04-15 04:20:07,498 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1984#true} {1984#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1984#true} is VALID [2022-04-15 04:20:07,498 INFO L272 TraceCheckUtils]: 4: Hoare triple {1984#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1984#true} is VALID [2022-04-15 04:20:07,498 INFO L290 TraceCheckUtils]: 5: Hoare triple {1984#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1984#true} is VALID [2022-04-15 04:20:07,498 INFO L272 TraceCheckUtils]: 6: Hoare triple {1984#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1984#true} is VALID [2022-04-15 04:20:07,501 INFO L290 TraceCheckUtils]: 7: Hoare triple {1984#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2010#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 04:20:07,501 INFO L290 TraceCheckUtils]: 8: Hoare triple {2010#(= 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[] {2014#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:20:07,502 INFO L290 TraceCheckUtils]: 9: Hoare triple {2014#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2014#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:20:07,502 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2014#(not (= |assume_abort_if_not_#in~cond| 0))} {1984#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2021#(<= 1 main_~b~0)} is VALID [2022-04-15 04:20:07,503 INFO L290 TraceCheckUtils]: 11: Hoare triple {2021#(<= 1 main_~b~0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2025#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:20:07,503 INFO L290 TraceCheckUtils]: 12: Hoare triple {2025#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2025#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:20:07,503 INFO L290 TraceCheckUtils]: 13: Hoare triple {2025#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2025#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:20:07,504 INFO L272 TraceCheckUtils]: 14: Hoare triple {2025#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1984#true} is VALID [2022-04-15 04:20:07,504 INFO L290 TraceCheckUtils]: 15: Hoare triple {1984#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2038#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:20:07,504 INFO L290 TraceCheckUtils]: 16: Hoare triple {2038#(= |__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[] {2042#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:07,504 INFO L290 TraceCheckUtils]: 17: Hoare triple {2042#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2042#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:07,505 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2042#(not (= |__VERIFIER_assert_#in~cond| 0))} {2025#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2049#(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-15 04:20:07,506 INFO L290 TraceCheckUtils]: 19: Hoare triple {2049#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {2049#(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-15 04:20:07,506 INFO L290 TraceCheckUtils]: 20: Hoare triple {2049#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {2056#(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-15 04:20:07,507 INFO L290 TraceCheckUtils]: 21: Hoare triple {2056#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2060#(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-15 04:20:07,508 INFO L290 TraceCheckUtils]: 22: Hoare triple {2060#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2060#(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-15 04:20:07,508 INFO L290 TraceCheckUtils]: 23: Hoare triple {2060#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2060#(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-15 04:20:07,510 INFO L272 TraceCheckUtils]: 24: Hoare triple {2060#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2070#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:20:07,510 INFO L290 TraceCheckUtils]: 25: Hoare triple {2070#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2074#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:20:07,511 INFO L290 TraceCheckUtils]: 26: Hoare triple {2074#(<= 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[] {1985#false} is VALID [2022-04-15 04:20:07,511 INFO L290 TraceCheckUtils]: 27: Hoare triple {1985#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1985#false} is VALID [2022-04-15 04:20:07,511 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 04:20:07,511 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:20:36,071 INFO L290 TraceCheckUtils]: 27: Hoare triple {1985#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1985#false} is VALID [2022-04-15 04:20:36,072 INFO L290 TraceCheckUtils]: 26: Hoare triple {2074#(<= 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[] {1985#false} is VALID [2022-04-15 04:20:36,072 INFO L290 TraceCheckUtils]: 25: Hoare triple {2070#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2074#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:20:36,073 INFO L272 TraceCheckUtils]: 24: Hoare triple {2090#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2070#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:20:36,073 INFO L290 TraceCheckUtils]: 23: Hoare triple {2090#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2090#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:20:36,073 INFO L290 TraceCheckUtils]: 22: Hoare triple {2090#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2090#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:20:36,078 INFO L290 TraceCheckUtils]: 21: Hoare triple {2100#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2090#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:20:36,079 INFO L290 TraceCheckUtils]: 20: Hoare triple {2104#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {2100#(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-15 04:20:36,080 INFO L290 TraceCheckUtils]: 19: Hoare triple {2104#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {2104#(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-15 04:20:36,083 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2042#(not (= |__VERIFIER_assert_#in~cond| 0))} {2111#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2104#(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-15 04:20:36,083 INFO L290 TraceCheckUtils]: 17: Hoare triple {2042#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2042#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:36,084 INFO L290 TraceCheckUtils]: 16: Hoare triple {2121#(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[] {2042#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:36,084 INFO L290 TraceCheckUtils]: 15: Hoare triple {1984#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2121#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 04:20:36,084 INFO L272 TraceCheckUtils]: 14: Hoare triple {2111#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1984#true} is VALID [2022-04-15 04:20:36,085 INFO L290 TraceCheckUtils]: 13: Hoare triple {2111#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2111#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-15 04:20:36,085 INFO L290 TraceCheckUtils]: 12: Hoare triple {2111#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2111#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-15 04:20:36,086 INFO L290 TraceCheckUtils]: 11: Hoare triple {2134#(or (= (+ (* (- 1) main_~b~0 main_~a~0) (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (* main_~b~0 main_~a~0)) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2111#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-15 04:20:36,086 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2014#(not (= |assume_abort_if_not_#in~cond| 0))} {1984#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2134#(or (= (+ (* (- 1) main_~b~0 main_~a~0) (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (* main_~b~0 main_~a~0)) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} is VALID [2022-04-15 04:20:36,101 INFO L290 TraceCheckUtils]: 9: Hoare triple {2014#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2014#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:20:36,102 INFO L290 TraceCheckUtils]: 8: Hoare triple {2147#(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[] {2014#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:20:36,102 INFO L290 TraceCheckUtils]: 7: Hoare triple {1984#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2147#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-15 04:20:36,102 INFO L272 TraceCheckUtils]: 6: Hoare triple {1984#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1984#true} is VALID [2022-04-15 04:20:36,102 INFO L290 TraceCheckUtils]: 5: Hoare triple {1984#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1984#true} is VALID [2022-04-15 04:20:36,103 INFO L272 TraceCheckUtils]: 4: Hoare triple {1984#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1984#true} is VALID [2022-04-15 04:20:36,103 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1984#true} {1984#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1984#true} is VALID [2022-04-15 04:20:36,103 INFO L290 TraceCheckUtils]: 2: Hoare triple {1984#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1984#true} is VALID [2022-04-15 04:20:36,103 INFO L290 TraceCheckUtils]: 1: Hoare triple {1984#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1984#true} is VALID [2022-04-15 04:20:36,103 INFO L272 TraceCheckUtils]: 0: Hoare triple {1984#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1984#true} is VALID [2022-04-15 04:20:36,103 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 04:20:36,103 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:20:36,103 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1334886204] [2022-04-15 04:20:36,103 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:20:36,104 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1483891394] [2022-04-15 04:20:36,104 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1483891394] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:20:36,104 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:20:36,104 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 20 [2022-04-15 04:20:36,104 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [389649455] [2022-04-15 04:20:36,104 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:20:36,104 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 28 [2022-04-15 04:20:36,105 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:20:36,105 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 04:20:36,142 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:20:36,142 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-15 04:20:36,142 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:20:36,142 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-15 04:20:36,143 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=67, Invalid=313, Unknown=0, NotChecked=0, Total=380 [2022-04-15 04:20:36,143 INFO L87 Difference]: Start difference. First operand 86 states and 97 transitions. Second operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 04:20:38,140 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:38,140 INFO L93 Difference]: Finished difference Result 119 states and 135 transitions. [2022-04-15 04:20:38,140 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-15 04:20:38,140 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 28 [2022-04-15 04:20:38,140 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:20:38,140 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 04:20:38,142 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 71 transitions. [2022-04-15 04:20:38,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 04:20:38,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 71 transitions. [2022-04-15 04:20:38,143 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 71 transitions. [2022-04-15 04:20:38,214 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:20:38,216 INFO L225 Difference]: With dead ends: 119 [2022-04-15 04:20:38,216 INFO L226 Difference]: Without dead ends: 110 [2022-04-15 04:20:38,217 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 36 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 122 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=127, Invalid=575, Unknown=0, NotChecked=0, Total=702 [2022-04-15 04:20:38,217 INFO L913 BasicCegarLoop]: 19 mSDtfsCounter, 71 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 234 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 276 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 234 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-15 04:20:38,217 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [73 Valid, 145 Invalid, 276 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 234 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-15 04:20:38,218 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states. [2022-04-15 04:20:38,259 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 100. [2022-04-15 04:20:38,259 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:20:38,260 INFO L82 GeneralOperation]: Start isEquivalent. First operand 110 states. Second operand has 100 states, 75 states have (on average 1.1866666666666668) internal successors, (89), 79 states have internal predecessors, (89), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:20:38,260 INFO L74 IsIncluded]: Start isIncluded. First operand 110 states. Second operand has 100 states, 75 states have (on average 1.1866666666666668) internal successors, (89), 79 states have internal predecessors, (89), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:20:38,260 INFO L87 Difference]: Start difference. First operand 110 states. Second operand has 100 states, 75 states have (on average 1.1866666666666668) internal successors, (89), 79 states have internal predecessors, (89), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:20:38,263 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:38,263 INFO L93 Difference]: Finished difference Result 110 states and 123 transitions. [2022-04-15 04:20:38,263 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 123 transitions. [2022-04-15 04:20:38,263 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:20:38,263 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:20:38,264 INFO L74 IsIncluded]: Start isIncluded. First operand has 100 states, 75 states have (on average 1.1866666666666668) internal successors, (89), 79 states have internal predecessors, (89), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 110 states. [2022-04-15 04:20:38,264 INFO L87 Difference]: Start difference. First operand has 100 states, 75 states have (on average 1.1866666666666668) internal successors, (89), 79 states have internal predecessors, (89), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 110 states. [2022-04-15 04:20:38,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:38,266 INFO L93 Difference]: Finished difference Result 110 states and 123 transitions. [2022-04-15 04:20:38,266 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 123 transitions. [2022-04-15 04:20:38,267 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:20:38,267 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:20:38,267 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:20:38,267 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:20:38,267 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 100 states, 75 states have (on average 1.1866666666666668) internal successors, (89), 79 states have internal predecessors, (89), 14 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:20:38,269 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 113 transitions. [2022-04-15 04:20:38,269 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 113 transitions. Word has length 28 [2022-04-15 04:20:38,269 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:20:38,270 INFO L478 AbstractCegarLoop]: Abstraction has 100 states and 113 transitions. [2022-04-15 04:20:38,270 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 04:20:38,270 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 113 transitions. [2022-04-15 04:20:38,270 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-15 04:20:38,270 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:20:38,270 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:20:38,289 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-15 04:20:38,486 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:20:38,487 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:20:38,487 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:20:38,487 INFO L85 PathProgramCache]: Analyzing trace with hash -357510123, now seen corresponding path program 1 times [2022-04-15 04:20:38,487 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:20:38,487 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [176044068] [2022-04-15 04:20:38,487 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:20:38,488 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:20:38,498 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:20:38,498 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1563857490] [2022-04-15 04:20:38,498 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:20:38,498 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:20:38,498 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:20:38,500 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 04:20:38,500 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-15 04:20:38,537 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:20:38,538 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-15 04:20:38,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:20:38,545 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:20:48,686 INFO L272 TraceCheckUtils]: 0: Hoare triple {2703#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:20:48,687 INFO L290 TraceCheckUtils]: 1: Hoare triple {2703#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2703#true} is VALID [2022-04-15 04:20:48,687 INFO L290 TraceCheckUtils]: 2: Hoare triple {2703#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:20:48,687 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2703#true} {2703#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:20:48,687 INFO L272 TraceCheckUtils]: 4: Hoare triple {2703#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:20:48,687 INFO L290 TraceCheckUtils]: 5: Hoare triple {2703#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2703#true} is VALID [2022-04-15 04:20:48,687 INFO L272 TraceCheckUtils]: 6: Hoare triple {2703#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2703#true} is VALID [2022-04-15 04:20:48,688 INFO L290 TraceCheckUtils]: 7: Hoare triple {2703#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2703#true} is VALID [2022-04-15 04:20:48,688 INFO L290 TraceCheckUtils]: 8: Hoare triple {2703#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[] {2703#true} is VALID [2022-04-15 04:20:48,688 INFO L290 TraceCheckUtils]: 9: Hoare triple {2703#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:20:48,688 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2703#true} {2703#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2703#true} is VALID [2022-04-15 04:20:48,688 INFO L290 TraceCheckUtils]: 11: Hoare triple {2703#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2703#true} is VALID [2022-04-15 04:20:48,688 INFO L290 TraceCheckUtils]: 12: Hoare triple {2703#true} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2703#true} is VALID [2022-04-15 04:20:48,688 INFO L290 TraceCheckUtils]: 13: Hoare triple {2703#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2703#true} is VALID [2022-04-15 04:20:48,689 INFO L272 TraceCheckUtils]: 14: Hoare triple {2703#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2703#true} is VALID [2022-04-15 04:20:48,689 INFO L290 TraceCheckUtils]: 15: Hoare triple {2703#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2703#true} is VALID [2022-04-15 04:20:48,689 INFO L290 TraceCheckUtils]: 16: Hoare triple {2703#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[] {2703#true} is VALID [2022-04-15 04:20:48,689 INFO L290 TraceCheckUtils]: 17: Hoare triple {2703#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:20:48,689 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2703#true} {2703#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2703#true} is VALID [2022-04-15 04:20:48,689 INFO L290 TraceCheckUtils]: 19: Hoare triple {2703#true} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:20:48,689 INFO L290 TraceCheckUtils]: 20: Hoare triple {2703#true} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2703#true} is VALID [2022-04-15 04:20:48,690 INFO L290 TraceCheckUtils]: 21: Hoare triple {2703#true} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2703#true} is VALID [2022-04-15 04:20:48,690 INFO L290 TraceCheckUtils]: 22: Hoare triple {2703#true} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2703#true} is VALID [2022-04-15 04:20:48,690 INFO L290 TraceCheckUtils]: 23: Hoare triple {2703#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2703#true} is VALID [2022-04-15 04:20:48,690 INFO L272 TraceCheckUtils]: 24: Hoare triple {2703#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2703#true} is VALID [2022-04-15 04:20:48,690 INFO L290 TraceCheckUtils]: 25: Hoare triple {2703#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2783#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:20:48,691 INFO L290 TraceCheckUtils]: 26: Hoare triple {2783#(= |__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[] {2787#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:48,691 INFO L290 TraceCheckUtils]: 27: Hoare triple {2787#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2787#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:50,694 WARN L284 TraceCheckUtils]: 28: Hoare quadruple {2787#(not (= |__VERIFIER_assert_#in~cond| 0))} {2703#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2794#(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-15 04:20:50,695 INFO L290 TraceCheckUtils]: 29: Hoare triple {2794#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} [91] L34-1-->L33-4: Formula: (= v_main_~y~0_7 0) InVars {main_~y~0=v_main_~y~0_7} OutVars{main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[] {2798#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:20:50,695 INFO L272 TraceCheckUtils]: 30: Hoare triple {2798#(= main_~z~0 (* main_~b~0 main_~a~0))} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {2802#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:20:50,696 INFO L290 TraceCheckUtils]: 31: Hoare triple {2802#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2806#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:20:50,696 INFO L290 TraceCheckUtils]: 32: Hoare triple {2806#(<= 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[] {2704#false} is VALID [2022-04-15 04:20:50,696 INFO L290 TraceCheckUtils]: 33: Hoare triple {2704#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2704#false} is VALID [2022-04-15 04:20:50,696 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 04:20:50,696 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:21:00,609 INFO L290 TraceCheckUtils]: 33: Hoare triple {2704#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2704#false} is VALID [2022-04-15 04:21:00,609 INFO L290 TraceCheckUtils]: 32: Hoare triple {2806#(<= 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[] {2704#false} is VALID [2022-04-15 04:21:00,610 INFO L290 TraceCheckUtils]: 31: Hoare triple {2802#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2806#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:21:00,610 INFO L272 TraceCheckUtils]: 30: Hoare triple {2798#(= main_~z~0 (* main_~b~0 main_~a~0))} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {2802#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:21:00,611 INFO L290 TraceCheckUtils]: 29: Hoare triple {2825#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} [91] L34-1-->L33-4: Formula: (= v_main_~y~0_7 0) InVars {main_~y~0=v_main_~y~0_7} OutVars{main_~y~0=v_main_~y~0_7} AuxVars[] AssignedVars[] {2798#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:21:00,612 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2787#(not (= |__VERIFIER_assert_#in~cond| 0))} {2703#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2825#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-15 04:21:00,612 INFO L290 TraceCheckUtils]: 27: Hoare triple {2787#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2787#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:21:00,612 INFO L290 TraceCheckUtils]: 26: Hoare triple {2838#(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[] {2787#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:21:00,613 INFO L290 TraceCheckUtils]: 25: Hoare triple {2703#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2838#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 04:21:00,613 INFO L272 TraceCheckUtils]: 24: Hoare triple {2703#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2703#true} is VALID [2022-04-15 04:21:00,613 INFO L290 TraceCheckUtils]: 23: Hoare triple {2703#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2703#true} is VALID [2022-04-15 04:21:00,613 INFO L290 TraceCheckUtils]: 22: Hoare triple {2703#true} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2703#true} is VALID [2022-04-15 04:21:00,613 INFO L290 TraceCheckUtils]: 21: Hoare triple {2703#true} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2703#true} is VALID [2022-04-15 04:21:00,613 INFO L290 TraceCheckUtils]: 20: Hoare triple {2703#true} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2703#true} is VALID [2022-04-15 04:21:00,613 INFO L290 TraceCheckUtils]: 19: Hoare triple {2703#true} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:21:00,613 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2703#true} {2703#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2703#true} is VALID [2022-04-15 04:21:00,614 INFO L290 TraceCheckUtils]: 17: Hoare triple {2703#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:21:00,614 INFO L290 TraceCheckUtils]: 16: Hoare triple {2703#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[] {2703#true} is VALID [2022-04-15 04:21:00,614 INFO L290 TraceCheckUtils]: 15: Hoare triple {2703#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2703#true} is VALID [2022-04-15 04:21:00,614 INFO L272 TraceCheckUtils]: 14: Hoare triple {2703#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2703#true} is VALID [2022-04-15 04:21:00,614 INFO L290 TraceCheckUtils]: 13: Hoare triple {2703#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2703#true} is VALID [2022-04-15 04:21:00,614 INFO L290 TraceCheckUtils]: 12: Hoare triple {2703#true} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2703#true} is VALID [2022-04-15 04:21:00,614 INFO L290 TraceCheckUtils]: 11: Hoare triple {2703#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2703#true} is VALID [2022-04-15 04:21:00,614 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2703#true} {2703#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2703#true} is VALID [2022-04-15 04:21:00,614 INFO L290 TraceCheckUtils]: 9: Hoare triple {2703#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:21:00,614 INFO L290 TraceCheckUtils]: 8: Hoare triple {2703#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[] {2703#true} is VALID [2022-04-15 04:21:00,615 INFO L290 TraceCheckUtils]: 7: Hoare triple {2703#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2703#true} is VALID [2022-04-15 04:21:00,615 INFO L272 TraceCheckUtils]: 6: Hoare triple {2703#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2703#true} is VALID [2022-04-15 04:21:00,615 INFO L290 TraceCheckUtils]: 5: Hoare triple {2703#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2703#true} is VALID [2022-04-15 04:21:00,615 INFO L272 TraceCheckUtils]: 4: Hoare triple {2703#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:21:00,615 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2703#true} {2703#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:21:00,615 INFO L290 TraceCheckUtils]: 2: Hoare triple {2703#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:21:00,615 INFO L290 TraceCheckUtils]: 1: Hoare triple {2703#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2703#true} is VALID [2022-04-15 04:21:00,615 INFO L272 TraceCheckUtils]: 0: Hoare triple {2703#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2703#true} is VALID [2022-04-15 04:21:00,615 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 04:21:00,616 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:21:00,616 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [176044068] [2022-04-15 04:21:00,616 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:21:00,616 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1563857490] [2022-04-15 04:21:00,616 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1563857490] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:21:00,616 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:21:00,616 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-15 04:21:00,616 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1814239937] [2022-04-15 04:21:00,616 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:21:00,617 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-15 04:21:00,617 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:21:00,617 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 04:21:02,640 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 34 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 04:21:02,640 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 04:21:02,640 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:21:02,640 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 04:21:02,641 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-15 04:21:02,641 INFO L87 Difference]: Start difference. First operand 100 states and 113 transitions. Second operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 04:21:04,685 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 04:21:05,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:21:05,183 INFO L93 Difference]: Finished difference Result 112 states and 124 transitions. [2022-04-15 04:21:05,183 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 04:21:05,183 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-15 04:21:05,184 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:21:05,184 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 04:21:05,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-15 04:21:05,185 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 04:21:05,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-15 04:21:05,186 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 39 transitions. [2022-04-15 04:21:09,215 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 37 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-15 04:21:09,216 INFO L225 Difference]: With dead ends: 112 [2022-04-15 04:21:09,216 INFO L226 Difference]: Without dead ends: 97 [2022-04-15 04:21:09,217 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 58 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-15 04:21:09,217 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 17 mSDsluCounter, 88 mSDsCounter, 0 mSdLazyCounter, 72 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 76 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 72 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-15 04:21:09,217 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 110 Invalid, 76 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 72 Invalid, 1 Unknown, 0 Unchecked, 2.2s Time] [2022-04-15 04:21:09,218 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2022-04-15 04:21:09,255 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 96. [2022-04-15 04:21:09,256 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:21:09,256 INFO L82 GeneralOperation]: Start isEquivalent. First operand 97 states. Second operand has 96 states, 73 states have (on average 1.1369863013698631) internal successors, (83), 76 states have internal predecessors, (83), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:21:09,256 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand has 96 states, 73 states have (on average 1.1369863013698631) internal successors, (83), 76 states have internal predecessors, (83), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:21:09,256 INFO L87 Difference]: Start difference. First operand 97 states. Second operand has 96 states, 73 states have (on average 1.1369863013698631) internal successors, (83), 76 states have internal predecessors, (83), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:21:09,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:21:09,258 INFO L93 Difference]: Finished difference Result 97 states and 106 transitions. [2022-04-15 04:21:09,258 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 106 transitions. [2022-04-15 04:21:09,259 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:21:09,259 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:21:09,259 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 73 states have (on average 1.1369863013698631) internal successors, (83), 76 states have internal predecessors, (83), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 97 states. [2022-04-15 04:21:09,259 INFO L87 Difference]: Start difference. First operand has 96 states, 73 states have (on average 1.1369863013698631) internal successors, (83), 76 states have internal predecessors, (83), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 97 states. [2022-04-15 04:21:09,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:21:09,262 INFO L93 Difference]: Finished difference Result 97 states and 106 transitions. [2022-04-15 04:21:09,262 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 106 transitions. [2022-04-15 04:21:09,262 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:21:09,262 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:21:09,262 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:21:09,262 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:21:09,262 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 73 states have (on average 1.1369863013698631) internal successors, (83), 76 states have internal predecessors, (83), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:21:09,264 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 105 transitions. [2022-04-15 04:21:09,264 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 105 transitions. Word has length 34 [2022-04-15 04:21:09,264 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:21:09,264 INFO L478 AbstractCegarLoop]: Abstraction has 96 states and 105 transitions. [2022-04-15 04:21:09,264 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-15 04:21:09,264 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 105 transitions. [2022-04-15 04:21:09,265 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-15 04:21:09,265 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:21:09,265 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:21:09,284 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-15 04:21:09,477 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:21:09,478 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:21:09,478 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:21:09,478 INFO L85 PathProgramCache]: Analyzing trace with hash 960980470, now seen corresponding path program 1 times [2022-04-15 04:21:09,478 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:21:09,478 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1863992747] [2022-04-15 04:21:09,478 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:21:09,479 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:21:09,489 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:21:09,489 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1985563546] [2022-04-15 04:21:09,489 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:21:09,489 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:21:09,489 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:21:09,490 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 04:21:09,491 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-15 04:21:09,535 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:21:09,536 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-15 04:21:09,549 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:21:09,550 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:21:12,985 INFO L272 TraceCheckUtils]: 0: Hoare triple {3394#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:21:12,985 INFO L290 TraceCheckUtils]: 1: Hoare triple {3394#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {3394#true} is VALID [2022-04-15 04:21:12,985 INFO L290 TraceCheckUtils]: 2: Hoare triple {3394#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:21:12,985 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3394#true} {3394#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:21:12,985 INFO L272 TraceCheckUtils]: 4: Hoare triple {3394#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:21:12,985 INFO L290 TraceCheckUtils]: 5: Hoare triple {3394#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3394#true} is VALID [2022-04-15 04:21:12,986 INFO L272 TraceCheckUtils]: 6: Hoare triple {3394#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3394#true} is VALID [2022-04-15 04:21:12,986 INFO L290 TraceCheckUtils]: 7: Hoare triple {3394#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3394#true} is VALID [2022-04-15 04:21:12,986 INFO L290 TraceCheckUtils]: 8: Hoare triple {3394#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[] {3394#true} is VALID [2022-04-15 04:21:12,986 INFO L290 TraceCheckUtils]: 9: Hoare triple {3394#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:21:12,986 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3394#true} {3394#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3394#true} is VALID [2022-04-15 04:21:12,987 INFO L290 TraceCheckUtils]: 11: Hoare triple {3394#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {3432#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:21:12,987 INFO L290 TraceCheckUtils]: 12: Hoare triple {3432#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3432#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:21:12,988 INFO L290 TraceCheckUtils]: 13: Hoare triple {3432#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3432#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:21:12,988 INFO L272 TraceCheckUtils]: 14: Hoare triple {3432#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3394#true} is VALID [2022-04-15 04:21:12,988 INFO L290 TraceCheckUtils]: 15: Hoare triple {3394#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3394#true} is VALID [2022-04-15 04:21:12,988 INFO L290 TraceCheckUtils]: 16: Hoare triple {3394#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[] {3394#true} is VALID [2022-04-15 04:21:12,988 INFO L290 TraceCheckUtils]: 17: Hoare triple {3394#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:21:12,989 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3394#true} {3432#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3432#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:21:12,989 INFO L290 TraceCheckUtils]: 19: Hoare triple {3432#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {3457#(and (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:21:12,989 INFO L290 TraceCheckUtils]: 20: Hoare triple {3457#(and (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {3461#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:21:12,991 INFO L290 TraceCheckUtils]: 21: Hoare triple {3461#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3465#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:21:12,991 INFO L290 TraceCheckUtils]: 22: Hoare triple {3465#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3465#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:21:12,991 INFO L290 TraceCheckUtils]: 23: Hoare triple {3465#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3465#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:21:12,992 INFO L272 TraceCheckUtils]: 24: Hoare triple {3465#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3394#true} is VALID [2022-04-15 04:21:12,992 INFO L290 TraceCheckUtils]: 25: Hoare triple {3394#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3478#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:21:12,992 INFO L290 TraceCheckUtils]: 26: Hoare triple {3478#(= |__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[] {3482#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:21:12,992 INFO L290 TraceCheckUtils]: 27: Hoare triple {3482#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3482#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:21:12,993 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3482#(not (= |__VERIFIER_assert_#in~cond| 0))} {3465#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3489#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:21:12,994 INFO L290 TraceCheckUtils]: 29: Hoare triple {3489#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {3489#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:21:12,995 INFO L290 TraceCheckUtils]: 30: Hoare triple {3489#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {3496#(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)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:21:13,004 INFO L290 TraceCheckUtils]: 31: Hoare triple {3496#(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)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3500#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~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)))} is VALID [2022-04-15 04:21:13,004 INFO L290 TraceCheckUtils]: 32: Hoare triple {3500#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~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)))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3500#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~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)))} is VALID [2022-04-15 04:21:13,005 INFO L290 TraceCheckUtils]: 33: Hoare triple {3500#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~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)))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3500#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~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)))} is VALID [2022-04-15 04:21:13,011 INFO L272 TraceCheckUtils]: 34: Hoare triple {3500#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~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)))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3510#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:21:13,012 INFO L290 TraceCheckUtils]: 35: Hoare triple {3510#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3514#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:21:13,012 INFO L290 TraceCheckUtils]: 36: Hoare triple {3514#(<= 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[] {3395#false} is VALID [2022-04-15 04:21:13,012 INFO L290 TraceCheckUtils]: 37: Hoare triple {3395#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3395#false} is VALID [2022-04-15 04:21:13,013 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 13 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 04:21:13,013 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:22:37,762 INFO L290 TraceCheckUtils]: 37: Hoare triple {3395#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3395#false} is VALID [2022-04-15 04:22:37,763 INFO L290 TraceCheckUtils]: 36: Hoare triple {3514#(<= 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[] {3395#false} is VALID [2022-04-15 04:22:37,763 INFO L290 TraceCheckUtils]: 35: Hoare triple {3510#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3514#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:22:37,764 INFO L272 TraceCheckUtils]: 34: Hoare triple {3530#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3510#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:22:37,765 INFO L290 TraceCheckUtils]: 33: Hoare triple {3530#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3530#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:22:37,765 INFO L290 TraceCheckUtils]: 32: Hoare triple {3530#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3530#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:22:37,770 INFO L290 TraceCheckUtils]: 31: Hoare triple {3540#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3530#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:22:37,771 INFO L290 TraceCheckUtils]: 30: Hoare triple {3544#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {3540#(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-15 04:22:37,771 INFO L290 TraceCheckUtils]: 29: Hoare triple {3544#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {3544#(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-15 04:22:37,776 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3482#(not (= |__VERIFIER_assert_#in~cond| 0))} {3551#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3544#(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-15 04:22:37,776 INFO L290 TraceCheckUtils]: 27: Hoare triple {3482#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3482#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:22:37,776 INFO L290 TraceCheckUtils]: 26: Hoare triple {3561#(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[] {3482#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:22:37,777 INFO L290 TraceCheckUtils]: 25: Hoare triple {3394#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3561#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 04:22:37,777 INFO L272 TraceCheckUtils]: 24: Hoare triple {3551#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3394#true} is VALID [2022-04-15 04:22:37,777 INFO L290 TraceCheckUtils]: 23: Hoare triple {3551#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3551#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-15 04:22:37,778 INFO L290 TraceCheckUtils]: 22: Hoare triple {3551#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3551#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-15 04:22:37,887 INFO L290 TraceCheckUtils]: 21: Hoare triple {3574#(and (or (<= 0 (+ (div main_~y~0 2) 1)) (forall ((aux_div_v_main_~y~0_35_22 Int)) (or (< (+ (div main_~y~0 2) 1) (* aux_div_v_main_~y~0_35_22 2)) (= (+ (* main_~x~0 4) (* (* aux_div_v_main_~y~0_35_22 main_~x~0) 4)) (* (* (+ (div main_~y~0 2) 1) main_~x~0) 2)) (<= (+ (* aux_div_v_main_~y~0_35_22 2) 1) (div main_~y~0 2)))) (= (mod main_~y~0 2) 0) (<= (div (div main_~y~0 2) 2) (div (+ (- 1) (div main_~y~0 2)) 2))) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (div main_~y~0 2)) (forall ((aux_div_v_main_~y~0_35_22 Int)) (or (<= (+ (* aux_div_v_main_~y~0_35_22 2) 2) (div main_~y~0 2)) (< (div main_~y~0 2) (* aux_div_v_main_~y~0_35_22 2)) (= (* 2 (* (div main_~y~0 2) main_~x~0)) (+ (* main_~x~0 4) (* (* aux_div_v_main_~y~0_35_22 main_~x~0) 4))))) (<= (div (- (div main_~y~0 2)) (- 2)) (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3551#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-15 04:22:37,894 INFO L290 TraceCheckUtils]: 20: Hoare triple {3394#true} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {3574#(and (or (<= 0 (+ (div main_~y~0 2) 1)) (forall ((aux_div_v_main_~y~0_35_22 Int)) (or (< (+ (div main_~y~0 2) 1) (* aux_div_v_main_~y~0_35_22 2)) (= (+ (* main_~x~0 4) (* (* aux_div_v_main_~y~0_35_22 main_~x~0) 4)) (* (* (+ (div main_~y~0 2) 1) main_~x~0) 2)) (<= (+ (* aux_div_v_main_~y~0_35_22 2) 1) (div main_~y~0 2)))) (= (mod main_~y~0 2) 0) (<= (div (div main_~y~0 2) 2) (div (+ (- 1) (div main_~y~0 2)) 2))) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (div main_~y~0 2)) (forall ((aux_div_v_main_~y~0_35_22 Int)) (or (<= (+ (* aux_div_v_main_~y~0_35_22 2) 2) (div main_~y~0 2)) (< (div main_~y~0 2) (* aux_div_v_main_~y~0_35_22 2)) (= (* 2 (* (div main_~y~0 2) main_~x~0)) (+ (* main_~x~0 4) (* (* aux_div_v_main_~y~0_35_22 main_~x~0) 4))))) (<= (div (- (div main_~y~0 2)) (- 2)) (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-15 04:22:37,894 INFO L290 TraceCheckUtils]: 19: Hoare triple {3394#true} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:22:37,895 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3394#true} {3394#true} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3394#true} is VALID [2022-04-15 04:22:37,895 INFO L290 TraceCheckUtils]: 17: Hoare triple {3394#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:22:37,895 INFO L290 TraceCheckUtils]: 16: Hoare triple {3394#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[] {3394#true} is VALID [2022-04-15 04:22:37,895 INFO L290 TraceCheckUtils]: 15: Hoare triple {3394#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3394#true} is VALID [2022-04-15 04:22:37,895 INFO L272 TraceCheckUtils]: 14: Hoare triple {3394#true} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3394#true} is VALID [2022-04-15 04:22:37,895 INFO L290 TraceCheckUtils]: 13: Hoare triple {3394#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3394#true} is VALID [2022-04-15 04:22:37,895 INFO L290 TraceCheckUtils]: 12: Hoare triple {3394#true} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3394#true} is VALID [2022-04-15 04:22:37,895 INFO L290 TraceCheckUtils]: 11: Hoare triple {3394#true} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {3394#true} is VALID [2022-04-15 04:22:37,896 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3394#true} {3394#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3394#true} is VALID [2022-04-15 04:22:37,896 INFO L290 TraceCheckUtils]: 9: Hoare triple {3394#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:22:37,896 INFO L290 TraceCheckUtils]: 8: Hoare triple {3394#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[] {3394#true} is VALID [2022-04-15 04:22:37,896 INFO L290 TraceCheckUtils]: 7: Hoare triple {3394#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3394#true} is VALID [2022-04-15 04:22:37,896 INFO L272 TraceCheckUtils]: 6: Hoare triple {3394#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3394#true} is VALID [2022-04-15 04:22:37,896 INFO L290 TraceCheckUtils]: 5: Hoare triple {3394#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3394#true} is VALID [2022-04-15 04:22:37,896 INFO L272 TraceCheckUtils]: 4: Hoare triple {3394#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:22:37,896 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3394#true} {3394#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:22:37,896 INFO L290 TraceCheckUtils]: 2: Hoare triple {3394#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:22:37,897 INFO L290 TraceCheckUtils]: 1: Hoare triple {3394#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {3394#true} is VALID [2022-04-15 04:22:37,897 INFO L272 TraceCheckUtils]: 0: Hoare triple {3394#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3394#true} is VALID [2022-04-15 04:22:37,897 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 14 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 04:22:37,897 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:22:37,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1863992747] [2022-04-15 04:22:37,897 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:22:37,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1985563546] [2022-04-15 04:22:37,897 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1985563546] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:22:37,898 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:22:37,898 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11] total 19 [2022-04-15 04:22:37,898 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1352862896] [2022-04-15 04:22:37,898 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:22:37,899 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Word has length 38 [2022-04-15 04:22:37,899 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:22:37,899 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 04:22:38,044 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:22:38,045 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-15 04:22:38,045 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:22:38,045 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-15 04:22:38,045 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=281, Unknown=0, NotChecked=0, Total=342 [2022-04-15 04:22:38,046 INFO L87 Difference]: Start difference. First operand 96 states and 105 transitions. Second operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 04:22:42,635 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:22:42,635 INFO L93 Difference]: Finished difference Result 118 states and 129 transitions. [2022-04-15 04:22:42,635 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-15 04:22:42,636 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Word has length 38 [2022-04-15 04:22:42,636 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:22:42,637 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 04:22:42,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 70 transitions. [2022-04-15 04:22:42,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 04:22:42,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 70 transitions. [2022-04-15 04:22:42,639 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 70 transitions. [2022-04-15 04:22:44,523 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:22:44,525 INFO L225 Difference]: With dead ends: 118 [2022-04-15 04:22:44,525 INFO L226 Difference]: Without dead ends: 116 [2022-04-15 04:22:44,525 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 86 GetRequests, 58 SyntacticMatches, 3 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 138 ImplicationChecksByTransitivity, 1.3s TimeCoverageRelationStatistics Valid=121, Invalid=581, Unknown=0, NotChecked=0, Total=702 [2022-04-15 04:22:44,526 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 41 mSDsluCounter, 178 mSDsCounter, 0 mSdLazyCounter, 207 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 203 SdHoareTripleChecker+Invalid, 263 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 207 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 28 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-15 04:22:44,526 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [42 Valid, 203 Invalid, 263 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 207 Invalid, 0 Unknown, 28 Unchecked, 0.8s Time] [2022-04-15 04:22:44,526 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states. [2022-04-15 04:22:44,558 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 78. [2022-04-15 04:22:44,558 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:22:44,558 INFO L82 GeneralOperation]: Start isEquivalent. First operand 116 states. Second operand has 78 states, 59 states have (on average 1.152542372881356) internal successors, (68), 61 states have internal predecessors, (68), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 04:22:44,560 INFO L74 IsIncluded]: Start isIncluded. First operand 116 states. Second operand has 78 states, 59 states have (on average 1.152542372881356) internal successors, (68), 61 states have internal predecessors, (68), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 04:22:44,560 INFO L87 Difference]: Start difference. First operand 116 states. Second operand has 78 states, 59 states have (on average 1.152542372881356) internal successors, (68), 61 states have internal predecessors, (68), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 04:22:44,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:22:44,566 INFO L93 Difference]: Finished difference Result 116 states and 126 transitions. [2022-04-15 04:22:44,566 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 126 transitions. [2022-04-15 04:22:44,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:22:44,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:22:44,567 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 59 states have (on average 1.152542372881356) internal successors, (68), 61 states have internal predecessors, (68), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 116 states. [2022-04-15 04:22:44,567 INFO L87 Difference]: Start difference. First operand has 78 states, 59 states have (on average 1.152542372881356) internal successors, (68), 61 states have internal predecessors, (68), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 116 states. [2022-04-15 04:22:44,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:22:44,569 INFO L93 Difference]: Finished difference Result 116 states and 126 transitions. [2022-04-15 04:22:44,569 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 126 transitions. [2022-04-15 04:22:44,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:22:44,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:22:44,570 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:22:44,570 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:22:44,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 59 states have (on average 1.152542372881356) internal successors, (68), 61 states have internal predecessors, (68), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 04:22:44,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 86 transitions. [2022-04-15 04:22:44,571 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 86 transitions. Word has length 38 [2022-04-15 04:22:44,571 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:22:44,571 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 86 transitions. [2022-04-15 04:22:44,571 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 04:22:44,572 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 86 transitions. [2022-04-15 04:22:44,572 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-15 04:22:44,572 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:22:44,572 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:22:44,591 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-15 04:22:44,787 WARN L460 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-15 04:22:44,788 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:22:44,788 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:22:44,788 INFO L85 PathProgramCache]: Analyzing trace with hash -831185954, now seen corresponding path program 2 times [2022-04-15 04:22:44,788 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:22:44,788 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1591273005] [2022-04-15 04:22:44,788 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:22:44,788 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:22:44,801 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:22:44,802 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1104918149] [2022-04-15 04:22:44,802 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 04:22:44,802 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:22:44,802 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:22:44,803 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-15 04:22:44,803 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-15 04:22:44,847 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 04:22:44,847 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 04:22:44,848 INFO L263 TraceCheckSpWp]: Trace formula consists of 184 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 04:22:44,858 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:22:44,859 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:22:45,088 INFO L272 TraceCheckUtils]: 0: Hoare triple {4155#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4155#true} is VALID [2022-04-15 04:22:45,089 INFO L290 TraceCheckUtils]: 1: Hoare triple {4155#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,089 INFO L290 TraceCheckUtils]: 2: Hoare triple {4163#(<= ~counter~0 0)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,090 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4163#(<= ~counter~0 0)} {4155#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,090 INFO L272 TraceCheckUtils]: 4: Hoare triple {4163#(<= ~counter~0 0)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,090 INFO L290 TraceCheckUtils]: 5: Hoare triple {4163#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,091 INFO L272 TraceCheckUtils]: 6: Hoare triple {4163#(<= ~counter~0 0)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,091 INFO L290 TraceCheckUtils]: 7: Hoare triple {4163#(<= ~counter~0 0)} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,091 INFO L290 TraceCheckUtils]: 8: Hoare triple {4163#(<= ~counter~0 0)} [80] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,092 INFO L290 TraceCheckUtils]: 9: Hoare triple {4163#(<= ~counter~0 0)} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,092 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4163#(<= ~counter~0 0)} {4163#(<= ~counter~0 0)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,092 INFO L290 TraceCheckUtils]: 11: Hoare triple {4163#(<= ~counter~0 0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,093 INFO L290 TraceCheckUtils]: 12: Hoare triple {4163#(<= ~counter~0 0)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,093 INFO L290 TraceCheckUtils]: 13: Hoare triple {4197#(<= ~counter~0 1)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,094 INFO L272 TraceCheckUtils]: 14: Hoare triple {4197#(<= ~counter~0 1)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,094 INFO L290 TraceCheckUtils]: 15: Hoare triple {4197#(<= ~counter~0 1)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,094 INFO L290 TraceCheckUtils]: 16: Hoare triple {4197#(<= ~counter~0 1)} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,094 INFO L290 TraceCheckUtils]: 17: Hoare triple {4197#(<= ~counter~0 1)} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,095 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4197#(<= ~counter~0 1)} {4197#(<= ~counter~0 1)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,095 INFO L290 TraceCheckUtils]: 19: Hoare triple {4197#(<= ~counter~0 1)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,096 INFO L290 TraceCheckUtils]: 20: Hoare triple {4197#(<= ~counter~0 1)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,096 INFO L290 TraceCheckUtils]: 21: Hoare triple {4197#(<= ~counter~0 1)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,096 INFO L290 TraceCheckUtils]: 22: Hoare triple {4197#(<= ~counter~0 1)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,097 INFO L290 TraceCheckUtils]: 23: Hoare triple {4228#(<= ~counter~0 2)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,097 INFO L272 TraceCheckUtils]: 24: Hoare triple {4228#(<= ~counter~0 2)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,097 INFO L290 TraceCheckUtils]: 25: Hoare triple {4228#(<= ~counter~0 2)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,098 INFO L290 TraceCheckUtils]: 26: Hoare triple {4228#(<= ~counter~0 2)} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,098 INFO L290 TraceCheckUtils]: 27: Hoare triple {4228#(<= ~counter~0 2)} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,098 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4228#(<= ~counter~0 2)} {4228#(<= ~counter~0 2)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,099 INFO L290 TraceCheckUtils]: 29: Hoare triple {4228#(<= ~counter~0 2)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,099 INFO L290 TraceCheckUtils]: 30: Hoare triple {4228#(<= ~counter~0 2)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,099 INFO L290 TraceCheckUtils]: 31: Hoare triple {4228#(<= ~counter~0 2)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,100 INFO L290 TraceCheckUtils]: 32: Hoare triple {4228#(<= ~counter~0 2)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,100 INFO L290 TraceCheckUtils]: 33: Hoare triple {4259#(<= ~counter~0 3)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,101 INFO L272 TraceCheckUtils]: 34: Hoare triple {4259#(<= ~counter~0 3)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,101 INFO L290 TraceCheckUtils]: 35: Hoare triple {4259#(<= ~counter~0 3)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,101 INFO L290 TraceCheckUtils]: 36: Hoare triple {4259#(<= ~counter~0 3)} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,102 INFO L290 TraceCheckUtils]: 37: Hoare triple {4259#(<= ~counter~0 3)} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,102 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4259#(<= ~counter~0 3)} {4259#(<= ~counter~0 3)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,102 INFO L290 TraceCheckUtils]: 39: Hoare triple {4259#(<= ~counter~0 3)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,103 INFO L290 TraceCheckUtils]: 40: Hoare triple {4259#(<= ~counter~0 3)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,103 INFO L290 TraceCheckUtils]: 41: Hoare triple {4259#(<= ~counter~0 3)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,104 INFO L290 TraceCheckUtils]: 42: Hoare triple {4259#(<= ~counter~0 3)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,104 INFO L290 TraceCheckUtils]: 43: Hoare triple {4290#(<= ~counter~0 4)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,104 INFO L272 TraceCheckUtils]: 44: Hoare triple {4290#(<= ~counter~0 4)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,105 INFO L290 TraceCheckUtils]: 45: Hoare triple {4290#(<= ~counter~0 4)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,105 INFO L290 TraceCheckUtils]: 46: Hoare triple {4290#(<= ~counter~0 4)} [90] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,105 INFO L290 TraceCheckUtils]: 47: Hoare triple {4290#(<= ~counter~0 4)} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,106 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {4290#(<= ~counter~0 4)} {4290#(<= ~counter~0 4)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,106 INFO L290 TraceCheckUtils]: 49: Hoare triple {4290#(<= ~counter~0 4)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,106 INFO L290 TraceCheckUtils]: 50: Hoare triple {4290#(<= ~counter~0 4)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,107 INFO L290 TraceCheckUtils]: 51: Hoare triple {4290#(<= ~counter~0 4)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,107 INFO L290 TraceCheckUtils]: 52: Hoare triple {4290#(<= ~counter~0 4)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4321#(<= |main_#t~post6| 4)} is VALID [2022-04-15 04:22:45,107 INFO L290 TraceCheckUtils]: 53: Hoare triple {4321#(<= |main_#t~post6| 4)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4156#false} is VALID [2022-04-15 04:22:45,107 INFO L272 TraceCheckUtils]: 54: Hoare triple {4156#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {4156#false} is VALID [2022-04-15 04:22:45,107 INFO L290 TraceCheckUtils]: 55: Hoare triple {4156#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4156#false} is VALID [2022-04-15 04:22:45,108 INFO L290 TraceCheckUtils]: 56: Hoare triple {4156#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[] {4156#false} is VALID [2022-04-15 04:22:45,108 INFO L290 TraceCheckUtils]: 57: Hoare triple {4156#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4156#false} is VALID [2022-04-15 04:22:45,108 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 8 proven. 68 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 04:22:45,108 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:22:45,354 INFO L290 TraceCheckUtils]: 57: Hoare triple {4156#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4156#false} is VALID [2022-04-15 04:22:45,354 INFO L290 TraceCheckUtils]: 56: Hoare triple {4156#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[] {4156#false} is VALID [2022-04-15 04:22:45,354 INFO L290 TraceCheckUtils]: 55: Hoare triple {4156#false} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4156#false} is VALID [2022-04-15 04:22:45,354 INFO L272 TraceCheckUtils]: 54: Hoare triple {4156#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {4156#false} is VALID [2022-04-15 04:22:45,355 INFO L290 TraceCheckUtils]: 53: Hoare triple {4321#(<= |main_#t~post6| 4)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4156#false} is VALID [2022-04-15 04:22:45,355 INFO L290 TraceCheckUtils]: 52: Hoare triple {4290#(<= ~counter~0 4)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4321#(<= |main_#t~post6| 4)} is VALID [2022-04-15 04:22:45,355 INFO L290 TraceCheckUtils]: 51: Hoare triple {4290#(<= ~counter~0 4)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,356 INFO L290 TraceCheckUtils]: 50: Hoare triple {4290#(<= ~counter~0 4)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,356 INFO L290 TraceCheckUtils]: 49: Hoare triple {4290#(<= ~counter~0 4)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,357 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {4155#true} {4290#(<= ~counter~0 4)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,357 INFO L290 TraceCheckUtils]: 47: Hoare triple {4155#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4155#true} is VALID [2022-04-15 04:22:45,358 INFO L290 TraceCheckUtils]: 46: Hoare triple {4155#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[] {4155#true} is VALID [2022-04-15 04:22:45,358 INFO L290 TraceCheckUtils]: 45: Hoare triple {4155#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4155#true} is VALID [2022-04-15 04:22:45,358 INFO L272 TraceCheckUtils]: 44: Hoare triple {4290#(<= ~counter~0 4)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4155#true} is VALID [2022-04-15 04:22:45,359 INFO L290 TraceCheckUtils]: 43: Hoare triple {4290#(<= ~counter~0 4)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,359 INFO L290 TraceCheckUtils]: 42: Hoare triple {4259#(<= ~counter~0 3)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4290#(<= ~counter~0 4)} is VALID [2022-04-15 04:22:45,360 INFO L290 TraceCheckUtils]: 41: Hoare triple {4259#(<= ~counter~0 3)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,360 INFO L290 TraceCheckUtils]: 40: Hoare triple {4259#(<= ~counter~0 3)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,360 INFO L290 TraceCheckUtils]: 39: Hoare triple {4259#(<= ~counter~0 3)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,361 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4155#true} {4259#(<= ~counter~0 3)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,361 INFO L290 TraceCheckUtils]: 37: Hoare triple {4155#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4155#true} is VALID [2022-04-15 04:22:45,361 INFO L290 TraceCheckUtils]: 36: Hoare triple {4155#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[] {4155#true} is VALID [2022-04-15 04:22:45,361 INFO L290 TraceCheckUtils]: 35: Hoare triple {4155#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4155#true} is VALID [2022-04-15 04:22:45,361 INFO L272 TraceCheckUtils]: 34: Hoare triple {4259#(<= ~counter~0 3)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4155#true} is VALID [2022-04-15 04:22:45,362 INFO L290 TraceCheckUtils]: 33: Hoare triple {4259#(<= ~counter~0 3)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,362 INFO L290 TraceCheckUtils]: 32: Hoare triple {4228#(<= ~counter~0 2)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4259#(<= ~counter~0 3)} is VALID [2022-04-15 04:22:45,363 INFO L290 TraceCheckUtils]: 31: Hoare triple {4228#(<= ~counter~0 2)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,363 INFO L290 TraceCheckUtils]: 30: Hoare triple {4228#(<= ~counter~0 2)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,363 INFO L290 TraceCheckUtils]: 29: Hoare triple {4228#(<= ~counter~0 2)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,364 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4155#true} {4228#(<= ~counter~0 2)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,364 INFO L290 TraceCheckUtils]: 27: Hoare triple {4155#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4155#true} is VALID [2022-04-15 04:22:45,364 INFO L290 TraceCheckUtils]: 26: Hoare triple {4155#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[] {4155#true} is VALID [2022-04-15 04:22:45,364 INFO L290 TraceCheckUtils]: 25: Hoare triple {4155#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4155#true} is VALID [2022-04-15 04:22:45,364 INFO L272 TraceCheckUtils]: 24: Hoare triple {4228#(<= ~counter~0 2)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4155#true} is VALID [2022-04-15 04:22:45,365 INFO L290 TraceCheckUtils]: 23: Hoare triple {4228#(<= ~counter~0 2)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,365 INFO L290 TraceCheckUtils]: 22: Hoare triple {4197#(<= ~counter~0 1)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4228#(<= ~counter~0 2)} is VALID [2022-04-15 04:22:45,366 INFO L290 TraceCheckUtils]: 21: Hoare triple {4197#(<= ~counter~0 1)} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,367 INFO L290 TraceCheckUtils]: 20: Hoare triple {4197#(<= ~counter~0 1)} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,367 INFO L290 TraceCheckUtils]: 19: Hoare triple {4197#(<= ~counter~0 1)} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,368 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4155#true} {4197#(<= ~counter~0 1)} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,368 INFO L290 TraceCheckUtils]: 17: Hoare triple {4155#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4155#true} is VALID [2022-04-15 04:22:45,368 INFO L290 TraceCheckUtils]: 16: Hoare triple {4155#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[] {4155#true} is VALID [2022-04-15 04:22:45,368 INFO L290 TraceCheckUtils]: 15: Hoare triple {4155#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4155#true} is VALID [2022-04-15 04:22:45,368 INFO L272 TraceCheckUtils]: 14: Hoare triple {4197#(<= ~counter~0 1)} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4155#true} is VALID [2022-04-15 04:22:45,368 INFO L290 TraceCheckUtils]: 13: Hoare triple {4197#(<= ~counter~0 1)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,369 INFO L290 TraceCheckUtils]: 12: Hoare triple {4163#(<= ~counter~0 0)} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4197#(<= ~counter~0 1)} is VALID [2022-04-15 04:22:45,369 INFO L290 TraceCheckUtils]: 11: Hoare triple {4163#(<= ~counter~0 0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,370 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4155#true} {4163#(<= ~counter~0 0)} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,370 INFO L290 TraceCheckUtils]: 9: Hoare triple {4155#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4155#true} is VALID [2022-04-15 04:22:45,370 INFO L290 TraceCheckUtils]: 8: Hoare triple {4155#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[] {4155#true} is VALID [2022-04-15 04:22:45,370 INFO L290 TraceCheckUtils]: 7: Hoare triple {4155#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {4155#true} is VALID [2022-04-15 04:22:45,370 INFO L272 TraceCheckUtils]: 6: Hoare triple {4163#(<= ~counter~0 0)} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {4155#true} is VALID [2022-04-15 04:22:45,371 INFO L290 TraceCheckUtils]: 5: Hoare triple {4163#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,371 INFO L272 TraceCheckUtils]: 4: Hoare triple {4163#(<= ~counter~0 0)} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,372 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4163#(<= ~counter~0 0)} {4155#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,372 INFO L290 TraceCheckUtils]: 2: Hoare triple {4163#(<= ~counter~0 0)} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,373 INFO L290 TraceCheckUtils]: 1: Hoare triple {4155#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {4163#(<= ~counter~0 0)} is VALID [2022-04-15 04:22:45,373 INFO L272 TraceCheckUtils]: 0: Hoare triple {4155#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4155#true} is VALID [2022-04-15 04:22:45,373 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 8 proven. 44 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-15 04:22:45,373 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:22:45,373 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1591273005] [2022-04-15 04:22:45,373 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:22:45,373 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1104918149] [2022-04-15 04:22:45,374 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1104918149] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:22:45,374 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:22:45,374 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-15 04:22:45,374 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [533727071] [2022-04-15 04:22:45,374 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:22:45,375 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) Word has length 58 [2022-04-15 04:22:45,379 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:22:45,379 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-15 04:22:45,427 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:22:45,428 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 04:22:45,428 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:22:45,428 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 04:22:45,428 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2022-04-15 04:22:45,428 INFO L87 Difference]: Start difference. First operand 78 states and 86 transitions. Second operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-15 04:22:45,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:22:45,575 INFO L93 Difference]: Finished difference Result 108 states and 120 transitions. [2022-04-15 04:22:45,575 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 04:22:45,575 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) Word has length 58 [2022-04-15 04:22:45,576 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:22:45,576 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-15 04:22:45,578 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 80 transitions. [2022-04-15 04:22:45,578 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-15 04:22:45,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 80 transitions. [2022-04-15 04:22:45,579 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 80 transitions. [2022-04-15 04:22:45,629 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:22:45,631 INFO L225 Difference]: With dead ends: 108 [2022-04-15 04:22:45,631 INFO L226 Difference]: Without dead ends: 101 [2022-04-15 04:22:45,631 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 108 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-15 04:22:45,632 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 18 mSDsluCounter, 76 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 105 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 04:22:45,633 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 105 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 04:22:45,633 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2022-04-15 04:22:45,666 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 101. [2022-04-15 04:22:45,666 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:22:45,666 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand has 101 states, 78 states have (on average 1.141025641025641) internal successors, (89), 80 states have internal predecessors, (89), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:22:45,666 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand has 101 states, 78 states have (on average 1.141025641025641) internal successors, (89), 80 states have internal predecessors, (89), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:22:45,666 INFO L87 Difference]: Start difference. First operand 101 states. Second operand has 101 states, 78 states have (on average 1.141025641025641) internal successors, (89), 80 states have internal predecessors, (89), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:22:45,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:22:45,668 INFO L93 Difference]: Finished difference Result 101 states and 111 transitions. [2022-04-15 04:22:45,668 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 111 transitions. [2022-04-15 04:22:45,668 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:22:45,668 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:22:45,668 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 78 states have (on average 1.141025641025641) internal successors, (89), 80 states have internal predecessors, (89), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 101 states. [2022-04-15 04:22:45,669 INFO L87 Difference]: Start difference. First operand has 101 states, 78 states have (on average 1.141025641025641) internal successors, (89), 80 states have internal predecessors, (89), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 101 states. [2022-04-15 04:22:45,670 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:22:45,670 INFO L93 Difference]: Finished difference Result 101 states and 111 transitions. [2022-04-15 04:22:45,670 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 111 transitions. [2022-04-15 04:22:45,670 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:22:45,670 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:22:45,670 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:22:45,670 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:22:45,671 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 78 states have (on average 1.141025641025641) internal successors, (89), 80 states have internal predecessors, (89), 12 states have call successors, (12), 11 states have call predecessors, (12), 10 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:22:45,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 111 transitions. [2022-04-15 04:22:45,672 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 111 transitions. Word has length 58 [2022-04-15 04:22:45,672 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:22:45,672 INFO L478 AbstractCegarLoop]: Abstraction has 101 states and 111 transitions. [2022-04-15 04:22:45,672 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-15 04:22:45,672 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 111 transitions. [2022-04-15 04:22:45,673 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-15 04:22:45,673 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:22:45,673 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 4, 4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:22:45,690 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-15 04:22:45,883 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-15 04:22:45,883 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:22:45,893 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:22:45,893 INFO L85 PathProgramCache]: Analyzing trace with hash -84345705, now seen corresponding path program 2 times [2022-04-15 04:22:45,893 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:22:45,894 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1200754329] [2022-04-15 04:22:45,894 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:22:45,894 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:22:45,912 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:22:45,912 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1172413356] [2022-04-15 04:22:45,912 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 04:22:45,912 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:22:45,912 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:22:45,924 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 04:22:45,927 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-15 04:22:45,971 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 04:22:45,971 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 04:22:45,972 INFO L263 TraceCheckSpWp]: Trace formula consists of 174 conjuncts, 60 conjunts are in the unsatisfiable core [2022-04-15 04:22:46,010 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:22:46,012 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:23:44,298 WARN L232 SmtUtils]: Spent 5.36s on a formula simplification. DAG size of input: 22 DAG size of output: 1 (called from [L1074] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2022-04-15 04:23:50,284 INFO L272 TraceCheckUtils]: 0: Hoare triple {4999#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4999#true} is VALID [2022-04-15 04:23:50,284 INFO L290 TraceCheckUtils]: 1: Hoare triple {4999#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {4999#true} is VALID [2022-04-15 04:23:50,284 INFO L290 TraceCheckUtils]: 2: Hoare triple {4999#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4999#true} is VALID [2022-04-15 04:23:50,284 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4999#true} {4999#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4999#true} is VALID [2022-04-15 04:23:50,284 INFO L272 TraceCheckUtils]: 4: Hoare triple {4999#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4999#true} is VALID [2022-04-15 04:23:50,285 INFO L290 TraceCheckUtils]: 5: Hoare triple {4999#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4999#true} is VALID [2022-04-15 04:23:50,285 INFO L272 TraceCheckUtils]: 6: Hoare triple {4999#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {4999#true} is VALID [2022-04-15 04:23:50,285 INFO L290 TraceCheckUtils]: 7: Hoare triple {4999#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {5025#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 04:23:50,285 INFO L290 TraceCheckUtils]: 8: Hoare triple {5025#(= 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[] {5029#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:23:50,285 INFO L290 TraceCheckUtils]: 9: Hoare triple {5029#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5029#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:23:50,286 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5029#(not (= |assume_abort_if_not_#in~cond| 0))} {4999#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {5036#(<= 1 main_~b~0)} is VALID [2022-04-15 04:23:50,286 INFO L290 TraceCheckUtils]: 11: Hoare triple {5036#(<= 1 main_~b~0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {5040#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:23:50,287 INFO L290 TraceCheckUtils]: 12: Hoare triple {5040#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {5040#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:23:50,287 INFO L290 TraceCheckUtils]: 13: Hoare triple {5040#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5040#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:23:50,287 INFO L272 TraceCheckUtils]: 14: Hoare triple {5040#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4999#true} is VALID [2022-04-15 04:23:50,287 INFO L290 TraceCheckUtils]: 15: Hoare triple {4999#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5053#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:23:50,288 INFO L290 TraceCheckUtils]: 16: Hoare triple {5053#(= |__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[] {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:23:50,288 INFO L290 TraceCheckUtils]: 17: Hoare triple {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:23:50,288 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} {5040#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5064#(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-15 04:23:50,289 INFO L290 TraceCheckUtils]: 19: Hoare triple {5064#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {5064#(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-15 04:23:50,293 INFO L290 TraceCheckUtils]: 20: Hoare triple {5064#(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))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {5071#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~b~0 main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:23:50,294 INFO L290 TraceCheckUtils]: 21: Hoare triple {5071#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~b~0 main_~x~0)) (+ main_~x~0 (* main_~b~0 main_~a~0))) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {5075#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:23:50,294 INFO L290 TraceCheckUtils]: 22: Hoare triple {5075#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {5075#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:23:50,295 INFO L290 TraceCheckUtils]: 23: Hoare triple {5075#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5075#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:23:50,295 INFO L272 TraceCheckUtils]: 24: Hoare triple {5075#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4999#true} is VALID [2022-04-15 04:23:50,295 INFO L290 TraceCheckUtils]: 25: Hoare triple {4999#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4999#true} is VALID [2022-04-15 04:23:50,295 INFO L290 TraceCheckUtils]: 26: Hoare triple {4999#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[] {4999#true} is VALID [2022-04-15 04:23:50,295 INFO L290 TraceCheckUtils]: 27: Hoare triple {4999#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4999#true} is VALID [2022-04-15 04:23:50,295 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4999#true} {5075#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5075#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:23:50,296 INFO L290 TraceCheckUtils]: 29: Hoare triple {5075#(and (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {5100#(and (not (= main_~y~0 0)) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:23:50,297 INFO L290 TraceCheckUtils]: 30: Hoare triple {5100#(and (not (= main_~y~0 0)) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (+ main_~a~0 (* main_~b~0 main_~a~0))) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 1 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {5104#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~a~0 main_~x~0) main_~z~0) (= (* main_~a~0 2) main_~x~0) (= (div (+ (- 1) main_~b~0) 2) (+ main_~y~0 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,299 INFO L290 TraceCheckUtils]: 31: Hoare triple {5104#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~a~0 main_~x~0) main_~z~0) (= (* main_~a~0 2) main_~x~0) (= (div (+ (- 1) main_~b~0) 2) (+ main_~y~0 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {5108#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,299 INFO L290 TraceCheckUtils]: 32: Hoare triple {5108#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {5108#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,299 INFO L290 TraceCheckUtils]: 33: Hoare triple {5108#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5108#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,300 INFO L272 TraceCheckUtils]: 34: Hoare triple {5108#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4999#true} is VALID [2022-04-15 04:23:50,300 INFO L290 TraceCheckUtils]: 35: Hoare triple {4999#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5053#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:23:50,300 INFO L290 TraceCheckUtils]: 36: Hoare triple {5053#(= |__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[] {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:23:50,300 INFO L290 TraceCheckUtils]: 37: Hoare triple {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:23:50,301 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} {5108#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5108#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,301 INFO L290 TraceCheckUtils]: 39: Hoare triple {5108#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {5108#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,302 INFO L290 TraceCheckUtils]: 40: Hoare triple {5108#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {5136#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,304 INFO L290 TraceCheckUtils]: 41: Hoare triple {5136#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 3) main_~z~0) (= (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) main_~y~0) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {5140#(and (<= 1 (mod main_~b~0 2)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (= (* main_~a~0 3) main_~z~0) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,304 INFO L290 TraceCheckUtils]: 42: Hoare triple {5140#(and (<= 1 (mod main_~b~0 2)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (= (* main_~a~0 3) main_~z~0) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {5140#(and (<= 1 (mod main_~b~0 2)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (= (* main_~a~0 3) main_~z~0) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,305 INFO L290 TraceCheckUtils]: 43: Hoare triple {5140#(and (<= 1 (mod main_~b~0 2)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (= (* main_~a~0 3) main_~z~0) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5140#(and (<= 1 (mod main_~b~0 2)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (= (* main_~a~0 3) main_~z~0) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,305 INFO L272 TraceCheckUtils]: 44: Hoare triple {5140#(and (<= 1 (mod main_~b~0 2)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (= (* main_~a~0 3) main_~z~0) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {4999#true} is VALID [2022-04-15 04:23:50,305 INFO L290 TraceCheckUtils]: 45: Hoare triple {4999#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5053#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:23:50,306 INFO L290 TraceCheckUtils]: 46: Hoare triple {5053#(= |__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[] {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:23:50,306 INFO L290 TraceCheckUtils]: 47: Hoare triple {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:23:50,307 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {5057#(not (= |__VERIFIER_assert_#in~cond| 0))} {5140#(and (<= 1 (mod main_~b~0 2)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (= (* main_~a~0 3) main_~z~0) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5162#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,307 INFO L290 TraceCheckUtils]: 49: Hoare triple {5162#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {5162#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,308 INFO L290 TraceCheckUtils]: 50: Hoare triple {5162#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {5169#(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)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,312 INFO L290 TraceCheckUtils]: 51: Hoare triple {5169#(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)) (= (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) main_~y~0) (= main_~x~0 (* main_~a~0 8)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (<= 1 main_~b~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {5173#(and (= main_~y~0 (div (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2)) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 16) main_~x~0) (= (+ main_~z~0 (* (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) (* main_~a~0 8))) (* main_~b~0 main_~a~0)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (not (= (mod (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,313 INFO L290 TraceCheckUtils]: 52: Hoare triple {5173#(and (= main_~y~0 (div (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2)) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 16) main_~x~0) (= (+ main_~z~0 (* (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) (* main_~a~0 8))) (* main_~b~0 main_~a~0)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (not (= (mod (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2) 1)) (<= 1 main_~b~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {5173#(and (= main_~y~0 (div (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2)) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 16) main_~x~0) (= (+ main_~z~0 (* (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) (* main_~a~0 8))) (* main_~b~0 main_~a~0)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (not (= (mod (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,313 INFO L290 TraceCheckUtils]: 53: Hoare triple {5173#(and (= main_~y~0 (div (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2)) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 16) main_~x~0) (= (+ main_~z~0 (* (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) (* main_~a~0 8))) (* main_~b~0 main_~a~0)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (not (= (mod (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2) 1)) (<= 1 main_~b~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5173#(and (= main_~y~0 (div (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2)) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 16) main_~x~0) (= (+ main_~z~0 (* (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) (* main_~a~0 8))) (* main_~b~0 main_~a~0)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (not (= (mod (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:23:50,322 INFO L272 TraceCheckUtils]: 54: Hoare triple {5173#(and (= main_~y~0 (div (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2)) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 16) main_~x~0) (= (+ main_~z~0 (* (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) (* main_~a~0 8))) (* main_~b~0 main_~a~0)) (not (= (mod (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 1)) (<= 1 (mod (div (+ (- 1) main_~b~0) 2) 2)) (not (= (mod (div (div (+ (- 1) (div (+ (- 1) main_~b~0) 2)) 2) 2) 2) 1)) (<= 1 main_~b~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5183#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:23:50,323 INFO L290 TraceCheckUtils]: 55: Hoare triple {5183#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5187#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:23:50,323 INFO L290 TraceCheckUtils]: 56: Hoare triple {5187#(<= 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[] {5000#false} is VALID [2022-04-15 04:23:50,323 INFO L290 TraceCheckUtils]: 57: Hoare triple {5000#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5000#false} is VALID [2022-04-15 04:23:50,324 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 11 proven. 54 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-15 04:23:50,324 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:27:10,913 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:27:10,913 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1200754329] [2022-04-15 04:27:10,913 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:27:10,913 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1172413356] [2022-04-15 04:27:10,914 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1172413356] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 04:27:10,914 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-15 04:27:10,914 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21] total 21 [2022-04-15 04:27:10,914 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1274614420] [2022-04-15 04:27:10,914 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-15 04:27:10,914 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 1.8095238095238095) internal successors, (38), 19 states have internal predecessors, (38), 6 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) Word has length 58 [2022-04-15 04:27:10,914 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:27:10,915 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 1.8095238095238095) internal successors, (38), 19 states have internal predecessors, (38), 6 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 04:27:10,974 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:27:10,974 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-15 04:27:10,974 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:27:10,975 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-15 04:27:10,975 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=140, Invalid=614, Unknown=2, NotChecked=0, Total=756 [2022-04-15 04:27:10,975 INFO L87 Difference]: Start difference. First operand 101 states and 111 transitions. Second operand has 21 states, 21 states have (on average 1.8095238095238095) internal successors, (38), 19 states have internal predecessors, (38), 6 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 04:27:17,139 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.24s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 04:27:18,963 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.07s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 04:27:22,590 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.18s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 04:27:33,234 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.00s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 04:27:35,236 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 04:27:36,653 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.41s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 04:27:43,233 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:27:43,233 INFO L93 Difference]: Finished difference Result 141 states and 156 transitions. [2022-04-15 04:27:43,233 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-15 04:27:43,234 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 1.8095238095238095) internal successors, (38), 19 states have internal predecessors, (38), 6 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) Word has length 58 [2022-04-15 04:27:43,234 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:27:43,234 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 1.8095238095238095) internal successors, (38), 19 states have internal predecessors, (38), 6 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 04:27:43,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 74 transitions. [2022-04-15 04:27:43,235 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 1.8095238095238095) internal successors, (38), 19 states have internal predecessors, (38), 6 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 04:27:43,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 74 transitions. [2022-04-15 04:27:43,236 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 74 transitions. [2022-04-15 04:27:44,508 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:27:44,511 INFO L225 Difference]: With dead ends: 141 [2022-04-15 04:27:44,511 INFO L226 Difference]: Without dead ends: 139 [2022-04-15 04:27:44,512 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 49 SyntacticMatches, 2 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 251 ImplicationChecksByTransitivity, 14.2s TimeCoverageRelationStatistics Valid=157, Invalid=771, Unknown=2, NotChecked=0, Total=930 [2022-04-15 04:27:44,512 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 45 mSDsluCounter, 223 mSDsCounter, 0 mSdLazyCounter, 523 mSolverCounterSat, 18 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 18.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 48 SdHoareTripleChecker+Valid, 251 SdHoareTripleChecker+Invalid, 542 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 523 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 18.8s IncrementalHoareTripleChecker+Time [2022-04-15 04:27:44,512 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [48 Valid, 251 Invalid, 542 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 523 Invalid, 1 Unknown, 0 Unchecked, 18.8s Time] [2022-04-15 04:27:44,513 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 139 states. [2022-04-15 04:27:44,566 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 139 to 125. [2022-04-15 04:27:44,566 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:27:44,566 INFO L82 GeneralOperation]: Start isEquivalent. First operand 139 states. Second operand has 125 states, 97 states have (on average 1.134020618556701) internal successors, (110), 100 states have internal predecessors, (110), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 04:27:44,567 INFO L74 IsIncluded]: Start isIncluded. First operand 139 states. Second operand has 125 states, 97 states have (on average 1.134020618556701) internal successors, (110), 100 states have internal predecessors, (110), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 04:27:44,567 INFO L87 Difference]: Start difference. First operand 139 states. Second operand has 125 states, 97 states have (on average 1.134020618556701) internal successors, (110), 100 states have internal predecessors, (110), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 04:27:44,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:27:44,570 INFO L93 Difference]: Finished difference Result 139 states and 154 transitions. [2022-04-15 04:27:44,570 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 154 transitions. [2022-04-15 04:27:44,571 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:27:44,571 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:27:44,571 INFO L74 IsIncluded]: Start isIncluded. First operand has 125 states, 97 states have (on average 1.134020618556701) internal successors, (110), 100 states have internal predecessors, (110), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) Second operand 139 states. [2022-04-15 04:27:44,572 INFO L87 Difference]: Start difference. First operand has 125 states, 97 states have (on average 1.134020618556701) internal successors, (110), 100 states have internal predecessors, (110), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) Second operand 139 states. [2022-04-15 04:27:44,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:27:44,574 INFO L93 Difference]: Finished difference Result 139 states and 154 transitions. [2022-04-15 04:27:44,574 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 154 transitions. [2022-04-15 04:27:44,574 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:27:44,574 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:27:44,574 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:27:44,575 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:27:44,575 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 125 states, 97 states have (on average 1.134020618556701) internal successors, (110), 100 states have internal predecessors, (110), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 11 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 04:27:44,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 138 transitions. [2022-04-15 04:27:44,577 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 138 transitions. Word has length 58 [2022-04-15 04:27:44,577 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:27:44,577 INFO L478 AbstractCegarLoop]: Abstraction has 125 states and 138 transitions. [2022-04-15 04:27:44,577 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 1.8095238095238095) internal successors, (38), 19 states have internal predecessors, (38), 6 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 04:27:44,577 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 138 transitions. [2022-04-15 04:27:44,577 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-15 04:27:44,577 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:27:44,578 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 4, 4, 4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:27:44,594 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-15 04:27:44,791 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-15 04:27:44,791 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:27:44,792 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:27:44,792 INFO L85 PathProgramCache]: Analyzing trace with hash -339082250, now seen corresponding path program 3 times [2022-04-15 04:27:44,792 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:27:44,792 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [69286720] [2022-04-15 04:27:44,792 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:27:44,792 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:27:44,810 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:27:44,810 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1125740871] [2022-04-15 04:27:44,811 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-15 04:27:44,811 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:27:44,811 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:27:44,812 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 04:27:44,819 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-15 04:27:44,862 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2022-04-15 04:27:44,862 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 04:27:44,863 INFO L263 TraceCheckSpWp]: Trace formula consists of 169 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-15 04:27:44,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:27:44,882 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:28:02,352 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 04:28:03,633 INFO L272 TraceCheckUtils]: 0: Hoare triple {5897#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:03,633 INFO L290 TraceCheckUtils]: 1: Hoare triple {5897#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {5897#true} is VALID [2022-04-15 04:28:03,633 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:03,634 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5897#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:03,634 INFO L272 TraceCheckUtils]: 4: Hoare triple {5897#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:03,634 INFO L290 TraceCheckUtils]: 5: Hoare triple {5897#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5897#true} is VALID [2022-04-15 04:28:03,634 INFO L272 TraceCheckUtils]: 6: Hoare triple {5897#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {5897#true} is VALID [2022-04-15 04:28:03,634 INFO L290 TraceCheckUtils]: 7: Hoare triple {5897#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {5923#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 04:28:03,634 INFO L290 TraceCheckUtils]: 8: Hoare triple {5923#(= 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[] {5927#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:28:03,635 INFO L290 TraceCheckUtils]: 9: Hoare triple {5927#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5927#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:28:03,635 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5927#(not (= |assume_abort_if_not_#in~cond| 0))} {5897#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {5934#(<= 1 main_~b~0)} is VALID [2022-04-15 04:28:03,635 INFO L290 TraceCheckUtils]: 11: Hoare triple {5934#(<= 1 main_~b~0)} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {5938#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,636 INFO L290 TraceCheckUtils]: 12: Hoare triple {5938#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {5938#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,636 INFO L290 TraceCheckUtils]: 13: Hoare triple {5938#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5938#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,636 INFO L272 TraceCheckUtils]: 14: Hoare triple {5938#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5897#true} is VALID [2022-04-15 04:28:03,636 INFO L290 TraceCheckUtils]: 15: Hoare triple {5897#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5897#true} is VALID [2022-04-15 04:28:03,636 INFO L290 TraceCheckUtils]: 16: Hoare triple {5897#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[] {5897#true} is VALID [2022-04-15 04:28:03,636 INFO L290 TraceCheckUtils]: 17: Hoare triple {5897#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:03,637 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5897#true} {5938#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5938#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,637 INFO L290 TraceCheckUtils]: 19: Hoare triple {5938#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {5938#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,638 INFO L290 TraceCheckUtils]: 20: Hoare triple {5938#(and (<= main_~b~0 main_~y~0) (<= 1 main_~b~0))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {5966#(and (<= main_~b~0 (+ main_~y~0 1)) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,639 INFO L290 TraceCheckUtils]: 21: Hoare triple {5966#(and (<= main_~b~0 (+ main_~y~0 1)) (<= 1 main_~b~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {5970#(and (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-15 04:28:03,640 INFO L290 TraceCheckUtils]: 22: Hoare triple {5970#(and (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {5970#(and (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-15 04:28:03,640 INFO L290 TraceCheckUtils]: 23: Hoare triple {5970#(and (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {5970#(and (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-15 04:28:03,640 INFO L272 TraceCheckUtils]: 24: Hoare triple {5970#(and (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5897#true} is VALID [2022-04-15 04:28:03,640 INFO L290 TraceCheckUtils]: 25: Hoare triple {5897#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5897#true} is VALID [2022-04-15 04:28:03,640 INFO L290 TraceCheckUtils]: 26: Hoare triple {5897#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[] {5897#true} is VALID [2022-04-15 04:28:03,640 INFO L290 TraceCheckUtils]: 27: Hoare triple {5897#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:03,641 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5897#true} {5970#(and (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5970#(and (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-15 04:28:03,641 INFO L290 TraceCheckUtils]: 29: Hoare triple {5970#(and (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {5995#(and (not (= main_~y~0 0)) (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-15 04:28:03,642 INFO L290 TraceCheckUtils]: 30: Hoare triple {5995#(and (not (= main_~y~0 0)) (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {5999#(and (not (= main_~y~0 0)) (not (= (mod main_~y~0 2) 1)) (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-15 04:28:03,643 INFO L290 TraceCheckUtils]: 31: Hoare triple {5999#(and (not (= main_~y~0 0)) (not (= (mod main_~y~0 2) 1)) (<= 1 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {6003#(and (exists ((aux_mod_v_main_~y~0_61_22 Int) (aux_div_v_main_~y~0_61_22 Int)) (and (<= 0 aux_mod_v_main_~y~0_61_22) (< aux_mod_v_main_~y~0_61_22 2) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ (* aux_div_v_main_~y~0_61_22 2) aux_mod_v_main_~y~0_61_22 1)) (not (= (+ (* aux_div_v_main_~y~0_61_22 2) aux_mod_v_main_~y~0_61_22) 0)) (not (= aux_mod_v_main_~y~0_61_22 1)) (<= (div (+ (* aux_div_v_main_~y~0_61_22 2) aux_mod_v_main_~y~0_61_22) 2) main_~y~0))) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,645 INFO L290 TraceCheckUtils]: 32: Hoare triple {6003#(and (exists ((aux_mod_v_main_~y~0_61_22 Int) (aux_div_v_main_~y~0_61_22 Int)) (and (<= 0 aux_mod_v_main_~y~0_61_22) (< aux_mod_v_main_~y~0_61_22 2) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ (* aux_div_v_main_~y~0_61_22 2) aux_mod_v_main_~y~0_61_22 1)) (not (= (+ (* aux_div_v_main_~y~0_61_22 2) aux_mod_v_main_~y~0_61_22) 0)) (not (= aux_mod_v_main_~y~0_61_22 1)) (<= (div (+ (* aux_div_v_main_~y~0_61_22 2) aux_mod_v_main_~y~0_61_22) 2) main_~y~0))) (<= 1 main_~b~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {6007#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,645 INFO L290 TraceCheckUtils]: 33: Hoare triple {6007#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {6007#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,645 INFO L272 TraceCheckUtils]: 34: Hoare triple {6007#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5897#true} is VALID [2022-04-15 04:28:03,645 INFO L290 TraceCheckUtils]: 35: Hoare triple {5897#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5897#true} is VALID [2022-04-15 04:28:03,645 INFO L290 TraceCheckUtils]: 36: Hoare triple {5897#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[] {5897#true} is VALID [2022-04-15 04:28:03,645 INFO L290 TraceCheckUtils]: 37: Hoare triple {5897#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:03,646 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {5897#true} {6007#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {6007#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,646 INFO L290 TraceCheckUtils]: 39: Hoare triple {6007#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {6007#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,647 INFO L290 TraceCheckUtils]: 40: Hoare triple {6007#(and (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {6032#(and (not (= (mod main_~y~0 2) 1)) (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,648 INFO L290 TraceCheckUtils]: 41: Hoare triple {6032#(and (not (= (mod main_~y~0 2) 1)) (< (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {6036#(and (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,648 INFO L290 TraceCheckUtils]: 42: Hoare triple {6036#(and (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {6036#(and (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,649 INFO L290 TraceCheckUtils]: 43: Hoare triple {6036#(and (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {6036#(and (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,649 INFO L272 TraceCheckUtils]: 44: Hoare triple {6036#(and (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5897#true} is VALID [2022-04-15 04:28:03,649 INFO L290 TraceCheckUtils]: 45: Hoare triple {5897#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {6049#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:28:03,650 INFO L290 TraceCheckUtils]: 46: Hoare triple {6049#(= |__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[] {6053#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:28:03,650 INFO L290 TraceCheckUtils]: 47: Hoare triple {6053#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6053#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:28:03,650 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {6053#(not (= |__VERIFIER_assert_#in~cond| 0))} {6036#(and (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {6060#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,651 INFO L290 TraceCheckUtils]: 49: Hoare triple {6060#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {6060#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,652 INFO L290 TraceCheckUtils]: 50: Hoare triple {6060#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {6067#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} is VALID [2022-04-15 04:28:03,655 INFO L290 TraceCheckUtils]: 51: Hoare triple {6067#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (< (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)) (< 0 main_~y~0) (<= 1 main_~b~0))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {6071#(and (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* 2 (* (div main_~x~0 2) main_~y~0)))) (< 0 main_~y~0) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0) (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-15 04:28:03,656 INFO L290 TraceCheckUtils]: 52: Hoare triple {6071#(and (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* 2 (* (div main_~x~0 2) main_~y~0)))) (< 0 main_~y~0) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0) (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {6071#(and (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* 2 (* (div main_~x~0 2) main_~y~0)))) (< 0 main_~y~0) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0) (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-15 04:28:03,656 INFO L290 TraceCheckUtils]: 53: Hoare triple {6071#(and (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* 2 (* (div main_~x~0 2) main_~y~0)))) (< 0 main_~y~0) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0) (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {6071#(and (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* 2 (* (div main_~x~0 2) main_~y~0)))) (< 0 main_~y~0) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0) (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-15 04:28:03,659 INFO L272 TraceCheckUtils]: 54: Hoare triple {6071#(and (= (* main_~b~0 main_~a~0) (+ main_~z~0 (* 2 (* (div main_~x~0 2) main_~y~0)))) (< 0 main_~y~0) (<= 1 main_~b~0) (= (mod main_~x~0 2) 0) (< (div (* (- 1) (div (* (- 1) (div (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) (- 2))) (- 2))) (- 2)) (+ main_~y~0 1)))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {6081#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:28:03,659 INFO L290 TraceCheckUtils]: 55: Hoare triple {6081#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {6085#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:28:03,659 INFO L290 TraceCheckUtils]: 56: Hoare triple {6085#(<= 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[] {5898#false} is VALID [2022-04-15 04:28:03,659 INFO L290 TraceCheckUtils]: 57: Hoare triple {5898#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5898#false} is VALID [2022-04-15 04:28:03,660 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 16 proven. 49 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-15 04:28:03,660 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:28:45,498 INFO L290 TraceCheckUtils]: 57: Hoare triple {5898#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5898#false} is VALID [2022-04-15 04:28:45,499 INFO L290 TraceCheckUtils]: 56: Hoare triple {6085#(<= 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[] {5898#false} is VALID [2022-04-15 04:28:45,499 INFO L290 TraceCheckUtils]: 55: Hoare triple {6081#(<= 1 |__VERIFIER_assert_#in~cond|)} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {6085#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:28:45,499 INFO L272 TraceCheckUtils]: 54: Hoare triple {6101#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {6081#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:28:45,500 INFO L290 TraceCheckUtils]: 53: Hoare triple {6101#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {6101#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:28:45,500 INFO L290 TraceCheckUtils]: 52: Hoare triple {6101#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {6101#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:28:45,515 INFO L290 TraceCheckUtils]: 51: Hoare triple {6111#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {6101#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:28:45,516 INFO L290 TraceCheckUtils]: 50: Hoare triple {6115#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {6111#(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-15 04:28:45,517 INFO L290 TraceCheckUtils]: 49: Hoare triple {6115#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {6115#(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-15 04:28:45,520 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {6053#(not (= |__VERIFIER_assert_#in~cond| 0))} {6122#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {6115#(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-15 04:28:45,520 INFO L290 TraceCheckUtils]: 47: Hoare triple {6053#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6053#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:28:45,521 INFO L290 TraceCheckUtils]: 46: Hoare triple {6132#(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[] {6053#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:28:45,523 INFO L290 TraceCheckUtils]: 45: Hoare triple {5897#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {6132#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 04:28:45,523 INFO L272 TraceCheckUtils]: 44: Hoare triple {6122#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5897#true} is VALID [2022-04-15 04:28:45,524 INFO L290 TraceCheckUtils]: 43: Hoare triple {6122#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {6122#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} is VALID [2022-04-15 04:28:45,524 INFO L290 TraceCheckUtils]: 42: Hoare triple {6122#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {6122#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} is VALID [2022-04-15 04:28:45,525 INFO L290 TraceCheckUtils]: 41: Hoare triple {6145#(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))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {6122#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} is VALID [2022-04-15 04:28:45,526 INFO L290 TraceCheckUtils]: 40: Hoare triple {6145#(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))))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {6145#(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-15 04:28:45,526 INFO L290 TraceCheckUtils]: 39: Hoare triple {6145#(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))))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {6145#(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-15 04:28:45,527 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {5897#true} {6145#(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))))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {6145#(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-15 04:28:45,527 INFO L290 TraceCheckUtils]: 37: Hoare triple {5897#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:45,527 INFO L290 TraceCheckUtils]: 36: Hoare triple {5897#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[] {5897#true} is VALID [2022-04-15 04:28:45,527 INFO L290 TraceCheckUtils]: 35: Hoare triple {5897#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5897#true} is VALID [2022-04-15 04:28:45,527 INFO L272 TraceCheckUtils]: 34: Hoare triple {6145#(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))))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5897#true} is VALID [2022-04-15 04:28:45,528 INFO L290 TraceCheckUtils]: 33: Hoare triple {6145#(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))))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {6145#(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-15 04:28:45,528 INFO L290 TraceCheckUtils]: 32: Hoare triple {6145#(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))))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {6145#(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-15 04:28:45,530 INFO L290 TraceCheckUtils]: 31: Hoare triple {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {6145#(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-15 04:28:45,530 INFO L290 TraceCheckUtils]: 30: Hoare triple {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} [97] L38-->L38-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_1 2))) (ite (and (not (= .cse0 0)) (< v_main_~y~0_1 0)) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_1} OutVars{main_~y~0=v_main_~y~0_1} AuxVars[] AssignedVars[] {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-15 04:28:45,531 INFO L290 TraceCheckUtils]: 29: Hoare triple {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-15 04:28:45,532 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5897#true} {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-15 04:28:45,532 INFO L290 TraceCheckUtils]: 27: Hoare triple {5897#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:45,532 INFO L290 TraceCheckUtils]: 26: Hoare triple {5897#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[] {5897#true} is VALID [2022-04-15 04:28:45,532 INFO L290 TraceCheckUtils]: 25: Hoare triple {5897#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5897#true} is VALID [2022-04-15 04:28:45,532 INFO L272 TraceCheckUtils]: 24: Hoare triple {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5897#true} is VALID [2022-04-15 04:28:45,532 INFO L290 TraceCheckUtils]: 23: Hoare triple {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-15 04:28:45,533 INFO L290 TraceCheckUtils]: 22: Hoare triple {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-15 04:28:45,535 INFO L290 TraceCheckUtils]: 21: Hoare triple {6207#(and (<= 0 (+ 3 (div (+ (- 1) (div (* (- 1) (div (+ (- 16) (div main_~y~0 2)) (- 2))) 2)) 2))) (or (<= 0 (+ (div (+ (- 1) (div (+ (- 1) (* (- 1) (div (+ 16 (* (- 1) (div main_~y~0 2))) 2))) 2)) 2) 3)) (not (= (mod main_~y~0 2) 0))))} [98] L38-2-->L33-3: Formula: (and (= v_main_~x~0_1 (* v_main_~x~0_2 2)) (= v_main_~y~0_2 (let ((.cse0 (div v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= (mod v_main_~y~0_3 2) 0))) (+ .cse0 1) .cse0)))) InVars {main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_3} OutVars{main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {6176#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-15 04:28:45,537 INFO L290 TraceCheckUtils]: 20: Hoare triple {6211#(<= 0 (+ (div (+ (- 1) (div (+ (div (div (+ (- 38) main_~y~0) 2) 2) (- 3)) 2)) 2) 4))} [96] L38-->L38-2: Formula: (and (= (let ((.cse0 (mod v_main_~y~0_10 2))) (ite (and (< v_main_~y~0_10 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) (= v_main_~z~0_5 (+ v_main_~x~0_6 v_main_~z~0_6)) (= v_main_~y~0_9 (+ (- 1) v_main_~y~0_10))) InVars {main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_6} OutVars{main_~y~0=v_main_~y~0_9, main_~x~0=v_main_~x~0_6, main_~z~0=v_main_~z~0_5} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {6207#(and (<= 0 (+ 3 (div (+ (- 1) (div (* (- 1) (div (+ (- 16) (div main_~y~0 2)) (- 2))) 2)) 2))) (or (<= 0 (+ (div (+ (- 1) (div (+ (- 1) (* (- 1) (div (+ 16 (* (- 1) (div main_~y~0 2))) 2))) 2)) 2) 3)) (not (= (mod main_~y~0 2) 0))))} is VALID [2022-04-15 04:28:45,538 INFO L290 TraceCheckUtils]: 19: Hoare triple {6211#(<= 0 (+ (div (+ (- 1) (div (+ (div (div (+ (- 38) main_~y~0) 2) 2) (- 3)) 2)) 2) 4))} [92] L34-1-->L38: Formula: (not (= v_main_~y~0_8 0)) InVars {main_~y~0=v_main_~y~0_8} OutVars{main_~y~0=v_main_~y~0_8} AuxVars[] AssignedVars[] {6211#(<= 0 (+ (div (+ (- 1) (div (+ (div (div (+ (- 38) main_~y~0) 2) 2) (- 3)) 2)) 2) 4))} is VALID [2022-04-15 04:28:45,538 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5897#true} {6211#(<= 0 (+ (div (+ (- 1) (div (+ (div (div (+ (- 38) main_~y~0) 2) 2) (- 3)) 2)) 2) 4))} [102] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {6211#(<= 0 (+ (div (+ (- 1) (div (+ (div (div (+ (- 38) main_~y~0) 2) 2) (- 3)) 2)) 2) 4))} is VALID [2022-04-15 04:28:45,538 INFO L290 TraceCheckUtils]: 17: Hoare triple {5897#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:45,538 INFO L290 TraceCheckUtils]: 16: Hoare triple {5897#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[] {5897#true} is VALID [2022-04-15 04:28:45,538 INFO L290 TraceCheckUtils]: 15: Hoare triple {5897#true} [86] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5897#true} is VALID [2022-04-15 04:28:45,539 INFO L272 TraceCheckUtils]: 14: Hoare triple {6211#(<= 0 (+ (div (+ (- 1) (div (+ (div (div (+ (- 38) main_~y~0) 2) 2) (- 3)) 2)) 2) 4))} [87] L34-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_7 v_main_~b~0_9)) 1 0)) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_9, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_7} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5897#true} is VALID [2022-04-15 04:28:45,539 INFO L290 TraceCheckUtils]: 13: Hoare triple {6211#(<= 0 (+ (div (+ (- 1) (div (+ (div (div (+ (- 38) main_~y~0) 2) 2) (- 3)) 2)) 2) 4))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {6211#(<= 0 (+ (div (+ (- 1) (div (+ (div (div (+ (- 38) main_~y~0) 2) 2) (- 3)) 2)) 2) 4))} is VALID [2022-04-15 04:28:45,539 INFO L290 TraceCheckUtils]: 12: Hoare triple {6211#(<= 0 (+ (div (+ (- 1) (div (+ (div (div (+ (- 38) main_~y~0) 2) 2) (- 3)) 2)) 2) 4))} [78] L33-3-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {6211#(<= 0 (+ (div (+ (- 1) (div (+ (div (div (+ (- 38) main_~y~0) 2) 2) (- 3)) 2)) 2) 4))} is VALID [2022-04-15 04:28:45,540 INFO L290 TraceCheckUtils]: 11: Hoare triple {6239#(<= 0 (+ 5 (div (+ (- 1) (div (+ (- 1) (div (+ (div (+ main_~b~0 (- 60)) 2) (- 1)) 2)) 2)) 2)))} [75] L27-1-->L33-3: Formula: (and (= v_main_~z~0_3 0) (= v_main_~a~0_5 v_main_~x~0_4) (= v_main_~b~0_6 v_main_~y~0_5)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_5} OutVars{main_~y~0=v_main_~y~0_5, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_3, main_~a~0=v_main_~a~0_5} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {6211#(<= 0 (+ (div (+ (- 1) (div (+ (div (div (+ (- 38) main_~y~0) 2) 2) (- 3)) 2)) 2) 4))} is VALID [2022-04-15 04:28:45,541 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5927#(not (= |assume_abort_if_not_#in~cond| 0))} {5897#true} [100] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {6239#(<= 0 (+ 5 (div (+ (- 1) (div (+ (- 1) (div (+ (div (+ main_~b~0 (- 60)) 2) (- 1)) 2)) 2)) 2)))} is VALID [2022-04-15 04:28:45,542 INFO L290 TraceCheckUtils]: 9: Hoare triple {5927#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5927#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:28:45,542 INFO L290 TraceCheckUtils]: 8: Hoare triple {6252#(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[] {5927#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:28:45,542 INFO L290 TraceCheckUtils]: 7: Hoare triple {5897#true} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {6252#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-15 04:28:45,542 INFO L272 TraceCheckUtils]: 6: Hoare triple {5897#true} [74] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (<= 1 v_main_~b~0_8) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {5897#true} is VALID [2022-04-15 04:28:45,542 INFO L290 TraceCheckUtils]: 5: Hoare triple {5897#true} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {5897#true} is VALID [2022-04-15 04:28:45,542 INFO L272 TraceCheckUtils]: 4: Hoare triple {5897#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:45,543 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5897#true} {5897#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:45,543 INFO L290 TraceCheckUtils]: 2: Hoare triple {5897#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:45,543 INFO L290 TraceCheckUtils]: 1: Hoare triple {5897#true} [70] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {5897#true} is VALID [2022-04-15 04:28:45,543 INFO L272 TraceCheckUtils]: 0: Hoare triple {5897#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5897#true} is VALID [2022-04-15 04:28:45,543 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 34 proven. 31 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-15 04:28:45,543 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:28:45,543 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [69286720] [2022-04-15 04:28:45,543 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:28:45,543 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1125740871] [2022-04-15 04:28:45,544 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1125740871] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:28:45,544 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:28:45,544 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 17] total 32 [2022-04-15 04:28:45,544 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [355891978] [2022-04-15 04:28:45,544 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:28:45,544 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 2.03125) internal successors, (65), 29 states have internal predecessors, (65), 11 states have call successors, (13), 2 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 9 states have call successors, (11) Word has length 58 [2022-04-15 04:28:45,545 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:28:45,545 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 32 states, 32 states have (on average 2.03125) internal successors, (65), 29 states have internal predecessors, (65), 11 states have call successors, (13), 2 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-15 04:28:45,648 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:28:45,648 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 32 states [2022-04-15 04:28:45,648 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:28:45,648 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2022-04-15 04:28:45,649 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=193, Invalid=799, Unknown=0, NotChecked=0, Total=992 [2022-04-15 04:28:45,649 INFO L87 Difference]: Start difference. First operand 125 states and 138 transitions. Second operand has 32 states, 32 states have (on average 2.03125) internal successors, (65), 29 states have internal predecessors, (65), 11 states have call successors, (13), 2 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-15 04:28:50,298 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:28:50,298 INFO L93 Difference]: Finished difference Result 151 states and 169 transitions. [2022-04-15 04:28:50,298 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-04-15 04:28:50,298 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 2.03125) internal successors, (65), 29 states have internal predecessors, (65), 11 states have call successors, (13), 2 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 9 states have call successors, (11) Word has length 58 [2022-04-15 04:28:50,299 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:28:50,299 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 2.03125) internal successors, (65), 29 states have internal predecessors, (65), 11 states have call successors, (13), 2 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-15 04:28:50,300 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 81 transitions. [2022-04-15 04:28:50,300 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 2.03125) internal successors, (65), 29 states have internal predecessors, (65), 11 states have call successors, (13), 2 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-15 04:28:50,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 81 transitions. [2022-04-15 04:28:50,301 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 81 transitions. [2022-04-15 04:28:55,424 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 80 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 04:28:55,426 INFO L225 Difference]: With dead ends: 151 [2022-04-15 04:28:55,426 INFO L226 Difference]: Without dead ends: 147 [2022-04-15 04:28:55,427 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 84 SyntacticMatches, 2 SemanticMatches, 48 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 664 ImplicationChecksByTransitivity, 4.3s TimeCoverageRelationStatistics Valid=514, Invalid=1936, Unknown=0, NotChecked=0, Total=2450 [2022-04-15 04:28:55,427 INFO L913 BasicCegarLoop]: 19 mSDtfsCounter, 92 mSDsluCounter, 218 mSDsCounter, 0 mSdLazyCounter, 375 mSolverCounterSat, 71 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 93 SdHoareTripleChecker+Valid, 237 SdHoareTripleChecker+Invalid, 447 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 71 IncrementalHoareTripleChecker+Valid, 375 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 1 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-15 04:28:55,427 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [93 Valid, 237 Invalid, 447 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [71 Valid, 375 Invalid, 0 Unknown, 1 Unchecked, 0.8s Time] [2022-04-15 04:28:55,427 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 147 states. [2022-04-15 04:28:55,473 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 147 to 69. [2022-04-15 04:28:55,473 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:28:55,473 INFO L82 GeneralOperation]: Start isEquivalent. First operand 147 states. Second operand has 69 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 52 states have internal predecessors, (58), 9 states have call successors, (9), 9 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 04:28:55,473 INFO L74 IsIncluded]: Start isIncluded. First operand 147 states. Second operand has 69 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 52 states have internal predecessors, (58), 9 states have call successors, (9), 9 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 04:28:55,473 INFO L87 Difference]: Start difference. First operand 147 states. Second operand has 69 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 52 states have internal predecessors, (58), 9 states have call successors, (9), 9 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 04:28:55,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:28:55,476 INFO L93 Difference]: Finished difference Result 147 states and 165 transitions. [2022-04-15 04:28:55,476 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 165 transitions. [2022-04-15 04:28:55,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:28:55,476 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:28:55,476 INFO L74 IsIncluded]: Start isIncluded. First operand has 69 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 52 states have internal predecessors, (58), 9 states have call successors, (9), 9 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 147 states. [2022-04-15 04:28:55,476 INFO L87 Difference]: Start difference. First operand has 69 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 52 states have internal predecessors, (58), 9 states have call successors, (9), 9 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 147 states. [2022-04-15 04:28:55,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:28:55,478 INFO L93 Difference]: Finished difference Result 147 states and 165 transitions. [2022-04-15 04:28:55,478 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 165 transitions. [2022-04-15 04:28:55,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:28:55,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:28:55,480 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:28:55,480 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:28:55,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 69 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 52 states have internal predecessors, (58), 9 states have call successors, (9), 9 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 04:28:55,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 74 transitions. [2022-04-15 04:28:55,481 INFO L78 Accepts]: Start accepts. Automaton has 69 states and 74 transitions. Word has length 58 [2022-04-15 04:28:55,481 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:28:55,481 INFO L478 AbstractCegarLoop]: Abstraction has 69 states and 74 transitions. [2022-04-15 04:28:55,481 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 32 states, 32 states have (on average 2.03125) internal successors, (65), 29 states have internal predecessors, (65), 11 states have call successors, (13), 2 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 9 states have call successors, (11) [2022-04-15 04:28:55,482 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 74 transitions. [2022-04-15 04:28:55,482 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-15 04:28:55,482 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:28:55,483 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 5, 5, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:28:55,501 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-15 04:28:55,703 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-15 04:28:55,703 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:28:55,704 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:28:55,704 INFO L85 PathProgramCache]: Analyzing trace with hash 1880993343, now seen corresponding path program 3 times [2022-04-15 04:28:55,704 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:28:55,704 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1309251365] [2022-04-15 04:28:55,704 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:28:55,704 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:28:55,714 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:28:55,715 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [377918706] [2022-04-15 04:28:55,715 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-15 04:28:55,715 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:28:55,716 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:28:55,717 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 04:28:55,718 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-15 04:28:55,855 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2022-04-15 04:28:55,855 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-15 04:28:55,856 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-15 04:28:55,917 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-15 04:28:55,942 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-15 04:28:55,942 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-15 04:28:55,943 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-15 04:28:55,982 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-15 04:28:56,183 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-15 04:28:56,189 INFO L719 BasicCegarLoop]: Path program histogram: [3, 3, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:28:56,191 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: L27 has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: L10-2 has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: L13-2 has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-15 04:28:56,223 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L45 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L33-3 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L33-3 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L33-4 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-04-15 04:28:56,224 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-15 04:28:56,224 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-15 04:28:56,225 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 15.04 04:28:56 BasicIcfg [2022-04-15 04:28:56,225 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-15 04:28:56,226 INFO L158 Benchmark]: Toolchain (without parser) took 636064.73ms. Allocated memory was 199.2MB in the beginning and 264.2MB in the end (delta: 65.0MB). Free memory was 147.4MB in the beginning and 180.4MB in the end (delta: -32.9MB). Peak memory consumption was 33.7MB. Max. memory is 8.0GB. [2022-04-15 04:28:56,226 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 199.2MB. Free memory is still 163.8MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-15 04:28:56,226 INFO L158 Benchmark]: CACSL2BoogieTranslator took 267.07ms. Allocated memory is still 199.2MB. Free memory was 147.1MB in the beginning and 175.5MB in the end (delta: -28.4MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-15 04:28:56,226 INFO L158 Benchmark]: Boogie Preprocessor took 33.53ms. Allocated memory is still 199.2MB. Free memory was 175.5MB in the beginning and 174.1MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-15 04:28:56,227 INFO L158 Benchmark]: RCFGBuilder took 263.35ms. Allocated memory is still 199.2MB. Free memory was 174.1MB in the beginning and 163.0MB in the end (delta: 11.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-15 04:28:56,227 INFO L158 Benchmark]: IcfgTransformer took 35.00ms. Allocated memory is still 199.2MB. Free memory was 163.0MB in the beginning and 161.3MB in the end (delta: 1.7MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-15 04:28:56,227 INFO L158 Benchmark]: TraceAbstraction took 635460.23ms. Allocated memory was 199.2MB in the beginning and 264.2MB in the end (delta: 65.0MB). Free memory was 160.9MB in the beginning and 180.4MB in the end (delta: -19.5MB). Peak memory consumption was 47.5MB. Max. memory is 8.0GB. [2022-04-15 04:28:56,228 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 199.2MB. Free memory is still 163.8MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 267.07ms. Allocated memory is still 199.2MB. Free memory was 147.1MB in the beginning and 175.5MB in the end (delta: -28.4MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 33.53ms. Allocated memory is still 199.2MB. Free memory was 175.5MB in the beginning and 174.1MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 263.35ms. Allocated memory is still 199.2MB. Free memory was 174.1MB in the beginning and 163.0MB in the end (delta: 11.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 35.00ms. Allocated memory is still 199.2MB. Free memory was 163.0MB in the beginning and 161.3MB in the end (delta: 1.7MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * TraceAbstraction took 635460.23ms. Allocated memory was 199.2MB in the beginning and 264.2MB in the end (delta: 65.0MB). Free memory was 160.9MB in the beginning and 180.4MB in the end (delta: -19.5MB). Peak memory consumption was 47.5MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 15]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L20] int counter = 0; VAL [\old(counter)=7, counter=0] [L22] int a, b; [L23] long long x, y, z; [L25] a = __VERIFIER_nondet_int() [L26] b = __VERIFIER_nondet_int() [L27] CALL assume_abort_if_not(b >= 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L10] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L27] RET assume_abort_if_not(b >= 1) VAL [\old(counter)=0, a=4, b=1073741823, counter=0] [L29] x = a [L30] y = b [L31] z = 0 VAL [\old(counter)=0, a=4, b=1073741823, counter=0, x=4, y=1073741823, z=0] [L33] EXPR counter++ VAL [\old(counter)=0, a=4, b=1073741823, counter=1, counter++=0, x=4, y=1073741823, z=0] [L33] COND TRUE counter++<5 [L34] CALL __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L13] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L34] RET __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(counter)=0, a=4, b=1073741823, counter=1, x=4, y=1073741823, z=0] [L35] COND FALSE !(!(y != 0)) VAL [\old(counter)=0, a=4, b=1073741823, counter=1, x=4, y=1073741823, z=0] [L38] COND TRUE y % 2 == 1 [L39] z = z + x [L40] y = y - 1 VAL [\old(counter)=0, a=4, b=1073741823, counter=1, x=4, y=1073741822, z=4] [L42] x = 2 * x [L43] y = y / 2 VAL [\old(counter)=0, a=4, b=1073741823, counter=1, x=8, y=536870911, z=4] [L33] EXPR counter++ VAL [\old(counter)=0, a=4, b=1073741823, counter=2, counter++=1, x=8, y=536870911, z=4] [L33] COND TRUE counter++<5 [L34] CALL __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(cond)=1, \old(counter)=0, counter=2] [L13] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=2] [L34] RET __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(counter)=0, a=4, b=1073741823, counter=2, x=8, y=536870911, z=4] [L35] COND FALSE !(!(y != 0)) VAL [\old(counter)=0, a=4, b=1073741823, counter=2, x=8, y=536870911, z=4] [L38] COND TRUE y % 2 == 1 [L39] z = z + x [L40] y = y - 1 VAL [\old(counter)=0, a=4, b=1073741823, counter=2, x=8, y=536870910, z=12] [L42] x = 2 * x [L43] y = y / 2 VAL [\old(counter)=0, a=4, b=1073741823, counter=2, x=16, y=268435455, z=12] [L33] EXPR counter++ VAL [\old(counter)=0, a=4, b=1073741823, counter=3, counter++=2, x=16, y=268435455, z=12] [L33] COND TRUE counter++<5 [L34] CALL __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(cond)=1, \old(counter)=0, counter=3] [L13] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=3] [L34] RET __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(counter)=0, a=4, b=1073741823, counter=3, x=16, y=268435455, z=12] [L35] COND FALSE !(!(y != 0)) VAL [\old(counter)=0, a=4, b=1073741823, counter=3, x=16, y=268435455, z=12] [L38] COND TRUE y % 2 == 1 [L39] z = z + x [L40] y = y - 1 VAL [\old(counter)=0, a=4, b=1073741823, counter=3, x=16, y=268435454, z=28] [L42] x = 2 * x [L43] y = y / 2 VAL [\old(counter)=0, a=4, b=1073741823, counter=3, x=32, y=134217727, z=28] [L33] EXPR counter++ VAL [\old(counter)=0, a=4, b=1073741823, counter=4, counter++=3, x=32, y=134217727, z=28] [L33] COND TRUE counter++<5 [L34] CALL __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(cond)=1, \old(counter)=0, counter=4] [L13] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=4] [L34] RET __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(counter)=0, a=4, b=1073741823, counter=4, x=32, y=134217727, z=28] [L35] COND FALSE !(!(y != 0)) VAL [\old(counter)=0, a=4, b=1073741823, counter=4, x=32, y=134217727, z=28] [L38] COND TRUE y % 2 == 1 [L39] z = z + x [L40] y = y - 1 VAL [\old(counter)=0, a=4, b=1073741823, counter=4, x=32, y=134217726, z=60] [L42] x = 2 * x [L43] y = y / 2 VAL [\old(counter)=0, a=4, b=1073741823, counter=4, x=64, y=67108863, z=60] [L33] EXPR counter++ VAL [\old(counter)=0, a=4, b=1073741823, counter=5, counter++=4, x=64, y=67108863, z=60] [L33] COND TRUE counter++<5 [L34] CALL __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L13] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L34] RET __VERIFIER_assert(z + x * y == (long long) a * b) VAL [\old(counter)=0, a=4, b=1073741823, counter=5, x=64, y=67108863, z=60] [L35] COND FALSE !(!(y != 0)) VAL [\old(counter)=0, a=4, b=1073741823, counter=5, x=64, y=67108863, z=60] [L38] COND TRUE y % 2 == 1 [L39] z = z + x [L40] y = y - 1 VAL [\old(counter)=0, a=4, b=1073741823, counter=5, x=64, y=67108862, z=124] [L42] x = 2 * x [L43] y = y / 2 VAL [\old(counter)=0, a=4, b=1073741823, counter=5, x=128, y=33554431, z=124] [L33] EXPR counter++ VAL [\old(counter)=0, a=4, b=1073741823, counter=6, counter++=5, x=128, y=33554431, z=124] [L33] COND FALSE !(counter++<5) [L45] CALL __VERIFIER_assert(z == (long long) a * b) VAL [\old(cond)=0, \old(counter)=0, counter=6] [L13] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=6] [L15] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=6] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 30 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 635.4s, OverallIterations: 13, TraceHistogramMax: 6, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 85.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 4 mSolverCounterUnknown, 402 SdHoareTripleChecker+Valid, 32.2s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 391 mSDsluCounter, 1612 SdHoareTripleChecker+Invalid, 32.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 29 IncrementalHoareTripleChecker+Unchecked, 1317 mSDsCounter, 213 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1776 IncrementalHoareTripleChecker+Invalid, 2022 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 213 mSolverCounterUnsat, 295 mSDtfsCounter, 1776 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 735 GetRequests, 536 SyntacticMatches, 12 SemanticMatches, 187 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 1268 ImplicationChecksByTransitivity, 34.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=125occurred in iteration=11, InterpolantAutomatonStates: 138, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.5s AutomataMinimizationTime, 12 MinimizatonAttempts, 158 StatesRemovedByMinimization, 10 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.4s SatisfiabilityAnalysisTime, 542.3s InterpolantComputationTime, 475 NumberOfCodeBlocks, 475 NumberOfCodeBlocksAsserted, 24 NumberOfCheckSat, 660 ConstructedInterpolants, 2 QuantifiedInterpolants, 5228 SizeOfPredicates, 40 NumberOfNonLiveVariables, 1361 ConjunctsInSsa, 227 ConjunctsInUnsatCore, 19 InterpolantComputations, 4 PerfectInterpolantSequences, 203/486 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-15 04:28:56,383 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...