/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_unwindbound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 04:18:19,477 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 04:18:19,479 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 04:18:19,499 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 04:18:19,499 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 04:18:19,500 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 04:18:19,503 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 04:18:19,507 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 04:18:19,508 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 04:18:19,511 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 04:18:19,512 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 04:18:19,513 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 04:18:19,513 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 04:18:19,515 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 04:18:19,515 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 04:18:19,516 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 04:18:19,517 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 04:18:19,517 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 04:18:19,520 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 04:18:19,525 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 04:18:19,526 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 04:18:19,527 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 04:18:19,527 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 04:18:19,528 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 04:18:19,529 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 04:18:19,530 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 04:18:19,530 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 04:18:19,531 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 04:18:19,531 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 04:18:19,531 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 04:18:19,532 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 04:18:19,533 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 04:18:19,534 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 04:18:19,534 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 04:18:19,534 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 04:18:19,535 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 04:18:19,535 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 04:18:19,535 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 04:18:19,536 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 04:18:19,536 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 04:18:19,536 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 04:18:19,537 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 04:18:19,538 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,558 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 04:18:19,558 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 04:18:19,559 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-15 04:18:19,559 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-15 04:18:19,559 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-15 04:18:19,560 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-15 04:18:19,560 INFO L138 SettingsManager]: * Use SBE=true [2022-04-15 04:18:19,560 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 04:18:19,560 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 04:18:19,560 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 04:18:19,560 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 04:18:19,561 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 04:18:19,561 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 04:18:19,561 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 04:18:19,561 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 04:18:19,561 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 04:18:19,561 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 04:18:19,561 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 04:18:19,561 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 04:18:19,561 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 04:18:19,561 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 04:18:19,561 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-15 04:18:19,562 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-15 04:18:19,562 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-15 04:18:19,562 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-15 04:18:19,562 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 04:18:19,562 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-15 04:18:19,562 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-15 04:18:19,563 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-15 04:18:19,563 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,743 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 04:18:19,762 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 04:18:19,763 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 04:18:19,764 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 04:18:19,764 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 04:18:19,765 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound2.c [2022-04-15 04:18:19,807 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cc4802bd3/e0eddf25d6fc4a738779575a659dfc71/FLAGfb58198e7 [2022-04-15 04:18:20,081 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 04:18:20,081 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound2.c [2022-04-15 04:18:20,086 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cc4802bd3/e0eddf25d6fc4a738779575a659dfc71/FLAGfb58198e7 [2022-04-15 04:18:20,533 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cc4802bd3/e0eddf25d6fc4a738779575a659dfc71 [2022-04-15 04:18:20,534 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 04:18:20,535 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-15 04:18:20,537 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 04:18:20,537 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 04:18:20,539 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 04:18:20,540 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,541 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4f10a84e 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,541 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,545 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 04:18:20,560 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 04:18:20,682 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_unwindbound2.c[537,550] [2022-04-15 04:18:20,695 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 04:18:20,700 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 04:18:20,709 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_unwindbound2.c[537,550] [2022-04-15 04:18:20,713 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 04:18:20,721 INFO L208 MainTranslator]: Completed translation [2022-04-15 04:18:20,721 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,722 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 04:18:20,731 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 04:18:20,731 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 04:18:20,731 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 04:18:20,738 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,738 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,742 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,742 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,750 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,753 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,753 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,754 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 04:18:20,755 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 04:18:20,755 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 04:18:20,755 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 04:18:20,759 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,764 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 04:18:20,770 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:20,779 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,782 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,807 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 04:18:20,807 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 04:18:20,807 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 04:18:20,807 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 04:18:20,808 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 04:18:20,808 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 04:18:20,808 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 04:18:20,809 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 04:18:20,811 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 04:18:20,811 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 04:18:20,812 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 04:18:20,812 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 04:18:20,812 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 04:18:20,812 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 04:18:20,812 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 04:18:20,812 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 04:18:20,812 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 04:18:20,812 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 04:18:20,812 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 04:18:20,813 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 04:18:20,852 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 04:18:20,853 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 04:18:20,949 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 04:18:20,954 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 04:18:20,954 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-15 04:18:20,955 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,955 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 04:18:20,956 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-15 04:18:20,956 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-15 04:18:20,957 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-15 04:18:20,958 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,960 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-15 04:18:20,984 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,984 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-15 04:18:20,985 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 04:18:20,986 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 04:18:20,988 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 04:18:20,988 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,989 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3bcadc20 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,989 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,989 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3bcadc20 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,989 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,990 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3bcadc20 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,990 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,991 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_unwindbound2.cqvasr [2022-04-15 04:18:21,009 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-15 04:18:21,010 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 04:18:21,037 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 04:18:21,041 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:21,042 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 04:18:21,055 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:21,058 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-15 04:18:21,058 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:21,058 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:21,059 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:21,062 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:21,062 INFO L85 PathProgramCache]: Analyzing trace with hash 1957529129, now seen corresponding path program 1 times [2022-04-15 04:18:21,068 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:21,068 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1241371249] [2022-04-15 04:18:21,069 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:21,069 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:21,181 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:21,252 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 04:18:21,257 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:21,267 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,268 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,268 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,268 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 04:18:21,270 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:21,274 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,275 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,275 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,275 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,276 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,277 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,277 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,277 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,278 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,278 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,278 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,279 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,279 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,279 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,279 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,280 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,280 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,281 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,281 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,281 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,282 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,282 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,282 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:21,283 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1241371249] [2022-04-15 04:18:21,283 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1241371249] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:18:21,283 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:18:21,284 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 04:18:21,285 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [520082565] [2022-04-15 04:18:21,285 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:18:21,290 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,291 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:21,294 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,324 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,324 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 04:18:21,324 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:21,340 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 04:18:21,341 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 04:18:21,344 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,454 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,454 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-15 04:18:21,454 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 04:18:21,455 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,455 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:21,456 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,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-15 04:18:21,461 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,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-15 04:18:21,465 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 66 transitions. [2022-04-15 04:18:21,524 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,532 INFO L225 Difference]: With dead ends: 52 [2022-04-15 04:18:21,532 INFO L226 Difference]: Without dead ends: 26 [2022-04-15 04:18:21,535 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,537 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,538 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,548 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2022-04-15 04:18:21,557 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 25. [2022-04-15 04:18:21,557 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:21,558 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,558 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,559 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,561 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,561 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-15 04:18:21,561 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-15 04:18:21,562 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:21,562 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:21,562 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,562 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,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,564 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-15 04:18:21,565 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-15 04:18:21,565 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:21,565 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:21,565 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:21,565 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:21,566 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,567 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 28 transitions. [2022-04-15 04:18:21,568 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 28 transitions. Word has length 17 [2022-04-15 04:18:21,568 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:21,568 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 28 transitions. [2022-04-15 04:18:21,569 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,569 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-15 04:18:21,569 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 04:18:21,569 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:21,569 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,570 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 04:18:21,570 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:21,570 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:21,570 INFO L85 PathProgramCache]: Analyzing trace with hash 583261658, now seen corresponding path program 1 times [2022-04-15 04:18:21,571 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:21,571 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1865685325] [2022-04-15 04:18:21,571 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:21,571 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:21,588 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:21,588 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1346851233] [2022-04-15 04:18:21,588 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:21,589 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:21,589 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:21,590 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,591 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,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:21,629 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 04:18:21,653 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:21,656 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:21,789 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,790 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,790 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,791 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,791 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,792 INFO L290 TraceCheckUtils]: 5: Hoare triple {207#(<= ~counter~0 0)} [72] mainENTRY-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_4, main_~x~0=v_main_~x~0_3, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,792 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,793 INFO L290 TraceCheckUtils]: 7: Hoare triple {207#(<= ~counter~0 0)} [76] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {207#(<= ~counter~0 0)} is VALID [2022-04-15 04:18:21,793 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,793 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,794 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,794 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,795 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,795 INFO L290 TraceCheckUtils]: 13: Hoare triple {241#(<= |main_#t~post6| 0)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 2)) 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,796 INFO L272 TraceCheckUtils]: 14: Hoare triple {200#false} [81] L33-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_8 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {200#false} is VALID [2022-04-15 04:18:21,796 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,796 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,796 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,796 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,796 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 04:18:21,797 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:21,814 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1865685325] [2022-04-15 04:18:21,814 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:21,814 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1346851233] [2022-04-15 04:18:21,815 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1346851233] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:18:21,815 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:18:21,815 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 04:18:21,815 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1893597468] [2022-04-15 04:18:21,815 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:18:21,816 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,816 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:21,816 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,852 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,852 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 04:18:21,852 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:21,852 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 04:18:21,853 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 04:18:21,853 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,904 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,905 INFO L93 Difference]: Finished difference Result 34 states and 37 transitions. [2022-04-15 04:18:21,905 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 04:18:21,905 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,905 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:21,905 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,915 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-15 04:18:21,915 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,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-15 04:18:21,917 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 37 transitions. [2022-04-15 04:18:21,938 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,939 INFO L225 Difference]: With dead ends: 34 [2022-04-15 04:18:21,939 INFO L226 Difference]: Without dead ends: 27 [2022-04-15 04:18:21,940 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 04:18:21,940 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,941 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,941 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-15 04:18:21,947 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-15 04:18:21,947 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:21,947 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,948 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,948 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,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,949 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-15 04:18:21,949 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-15 04:18:21,950 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:21,950 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:21,950 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,950 INFO L87 Difference]: Start difference. First operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 27 states. [2022-04-15 04:18:21,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:21,951 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-15 04:18:21,951 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-15 04:18:21,952 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:21,952 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:21,952 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:21,952 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:21,952 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,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-04-15 04:18:21,953 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 18 [2022-04-15 04:18:21,953 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:21,953 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-04-15 04:18:21,954 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,954 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-15 04:18:21,954 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 04:18:21,954 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:21,954 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,974 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:22,167 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:22,168 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:22,168 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:22,168 INFO L85 PathProgramCache]: Analyzing trace with hash 584363925, now seen corresponding path program 1 times [2022-04-15 04:18:22,168 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:22,168 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [430582165] [2022-04-15 04:18:22,169 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:22,169 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:22,182 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:22,182 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [145363064] [2022-04-15 04:18:22,182 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:22,182 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:22,182 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:22,183 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,185 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,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:22,217 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 04:18:22,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:22,225 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:22,314 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,314 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,314 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,314 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,315 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,315 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,315 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,315 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,315 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,315 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,316 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,316 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,316 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,317 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| 2) 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,318 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,318 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,318 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,319 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,319 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,319 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 04:18:22,319 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:22,319 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [430582165] [2022-04-15 04:18:22,319 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:22,319 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [145363064] [2022-04-15 04:18:22,319 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [145363064] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:18:22,320 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:18:22,320 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 04:18:22,320 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [265057661] [2022-04-15 04:18:22,320 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:18:22,320 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,320 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:22,321 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,332 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,333 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 04:18:22,333 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:22,333 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 04:18:22,333 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 04:18:22,333 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,440 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:22,440 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-15 04:18:22,440 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 04:18:22,441 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,441 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:22,441 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,442 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-15 04:18:22,442 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,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-15 04:18:22,443 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 43 transitions. [2022-04-15 04:18:22,471 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,473 INFO L225 Difference]: With dead ends: 38 [2022-04-15 04:18:22,473 INFO L226 Difference]: Without dead ends: 36 [2022-04-15 04:18:22,473 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,474 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,474 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,475 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-15 04:18:22,480 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 32. [2022-04-15 04:18:22,480 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:22,480 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,481 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,481 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,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:22,482 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-15 04:18:22,482 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-15 04:18:22,483 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:22,483 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:22,483 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,483 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,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:22,485 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-15 04:18:22,485 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-15 04:18:22,485 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:22,485 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:22,485 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:22,485 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:22,485 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,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 35 transitions. [2022-04-15 04:18:22,486 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 35 transitions. Word has length 18 [2022-04-15 04:18:22,487 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:22,487 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 35 transitions. [2022-04-15 04:18:22,487 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,487 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2022-04-15 04:18:22,487 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-15 04:18:22,487 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:22,487 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,505 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-15 04:18:22,703 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,704 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:22,704 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:22,704 INFO L85 PathProgramCache]: Analyzing trace with hash 1698322804, now seen corresponding path program 1 times [2022-04-15 04:18:22,704 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:22,705 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1024600092] [2022-04-15 04:18:22,705 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:22,705 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:22,716 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:22,716 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2015693747] [2022-04-15 04:18:22,716 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:22,716 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:22,717 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:22,717 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,718 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,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:22,748 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 04:18:22,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:22,755 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:22,838 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,838 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,838 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,838 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,839 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,839 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,839 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,839 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,840 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,840 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,844 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,845 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,850 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,851 INFO L290 TraceCheckUtils]: 13: Hoare triple {665#(<= 1 main_~y~0)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) 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,851 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,851 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,851 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,851 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,852 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,852 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,852 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,853 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,853 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,853 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,853 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,853 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 04:18:22,853 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:22,853 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1024600092] [2022-04-15 04:18:22,853 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:22,853 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2015693747] [2022-04-15 04:18:22,854 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2015693747] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 04:18:22,854 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 04:18:22,854 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 04:18:22,854 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [74593162] [2022-04-15 04:18:22,854 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 04:18:22,854 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,854 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:22,855 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,867 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,868 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 04:18:22,868 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:22,868 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 04:18:22,868 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 04:18:22,868 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,993 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,028 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,029 INFO L225 Difference]: With dead ends: 42 [2022-04-15 04:18:23,029 INFO L226 Difference]: Without dead ends: 35 [2022-04-15 04:18:23,029 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,030 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,030 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,031 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-15 04:18:23,039 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 33. [2022-04-15 04:18:23,039 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:23,040 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,040 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,040 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,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:23,041 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-15 04:18:23,041 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-15 04:18:23,042 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:23,042 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:23,042 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,042 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,043 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:23,043 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-15 04:18:23,043 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-15 04:18:23,044 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:23,044 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:23,044 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:23,044 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:23,044 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,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 36 transitions. [2022-04-15 04:18:23,045 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 36 transitions. Word has length 24 [2022-04-15 04:18:23,045 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:23,045 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 36 transitions. [2022-04-15 04:18:23,045 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,046 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 36 transitions. [2022-04-15 04:18:23,046 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 04:18:23,046 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:23,046 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,068 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,264 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,264 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:23,264 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:23,265 INFO L85 PathProgramCache]: Analyzing trace with hash 919545147, now seen corresponding path program 1 times [2022-04-15 04:18:23,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:23,265 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1721183685] [2022-04-15 04:18:23,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:23,265 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:23,285 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:23,286 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [686887924] [2022-04-15 04:18:23,286 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:23,286 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:23,286 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:23,287 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,288 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,327 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:23,328 INFO L263 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 04:18:23,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:23,344 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:23,482 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,483 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,484 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,484 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,486 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,486 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,487 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,487 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,487 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,488 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,488 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,488 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,489 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,489 INFO L290 TraceCheckUtils]: 13: Hoare triple {920#(<= ~counter~0 1)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) 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,490 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,490 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,490 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,491 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,491 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,493 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,493 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,494 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,494 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,494 INFO L290 TraceCheckUtils]: 23: Hoare triple {951#(<= |main_#t~post6| 1)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 2)) 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,495 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,495 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,495 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,495 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,495 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,495 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:18:23,617 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,617 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,617 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,617 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,618 INFO L290 TraceCheckUtils]: 23: Hoare triple {951#(<= |main_#t~post6| 1)} [82] L33-1-->L33-4: Formula: (not (< |v_main_#t~post6_3| 2)) 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,619 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,619 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,620 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,620 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,622 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {878#true} {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,622 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,622 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,622 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,622 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] {878#true} is VALID [2022-04-15 04:18:23,633 INFO L290 TraceCheckUtils]: 13: Hoare triple {920#(<= ~counter~0 1)} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) 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,634 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,634 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,634 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {878#true} {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,634 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,635 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,635 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,635 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] {878#true} is VALID [2022-04-15 04:18:23,635 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,635 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,636 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,636 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,636 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,637 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,637 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,637 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:18:23,637 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1721183685] [2022-04-15 04:18:23,637 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:18:23,637 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [686887924] [2022-04-15 04:18:23,637 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [686887924] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:18:23,637 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:18:23,637 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 5 [2022-04-15 04:18:23,637 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [395081253] [2022-04-15 04:18:23,637 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:18:23,638 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) Word has length 28 [2022-04-15 04:18:23,638 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:18:23,638 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 04:18:23,670 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:18:23,670 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 04:18:23,670 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:18:23,671 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 04:18:23,671 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 04:18:23,671 INFO L87 Difference]: Start difference. First operand 33 states and 36 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 04:18:23,740 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:23,740 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-04-15 04:18:23,740 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 04:18:23,741 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) Word has length 28 [2022-04-15 04:18:23,741 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:18:23,741 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 04:18:23,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-04-15 04:18:23,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 04:18:23,743 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2022-04-15 04:18:23,744 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 48 transitions. [2022-04-15 04:18:23,779 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:18:23,780 INFO L225 Difference]: With dead ends: 44 [2022-04-15 04:18:23,780 INFO L226 Difference]: Without dead ends: 37 [2022-04-15 04:18:23,780 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 51 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-15 04:18:23,781 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 7 mSDsluCounter, 48 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 75 SdHoareTripleChecker+Invalid, 16 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 04:18:23,781 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 75 Invalid, 16 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 04:18:23,782 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-15 04:18:23,791 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-15 04:18:23,792 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:18:23,792 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 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,792 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 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,792 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 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,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:23,793 INFO L93 Difference]: Finished difference Result 37 states and 41 transitions. [2022-04-15 04:18:23,793 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 41 transitions. [2022-04-15 04:18:23,794 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:23,794 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:23,794 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 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 37 states. [2022-04-15 04:18:23,794 INFO L87 Difference]: Start difference. First operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 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 37 states. [2022-04-15 04:18:23,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:18:23,795 INFO L93 Difference]: Finished difference Result 37 states and 41 transitions. [2022-04-15 04:18:23,795 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 41 transitions. [2022-04-15 04:18:23,795 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:18:23,795 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:18:23,795 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:18:23,795 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:18:23,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 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,796 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 41 transitions. [2022-04-15 04:18:23,797 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 41 transitions. Word has length 28 [2022-04-15 04:18:23,797 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:18:23,797 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 41 transitions. [2022-04-15 04:18:23,797 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 04:18:23,797 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 41 transitions. [2022-04-15 04:18:23,797 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 04:18:23,797 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:18:23,797 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:23,817 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,013 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,014 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:18:24,014 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:18:24,014 INFO L85 PathProgramCache]: Analyzing trace with hash 920647414, now seen corresponding path program 1 times [2022-04-15 04:18:24,014 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:18:24,014 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [731510845] [2022-04-15 04:18:24,014 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:24,014 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:18:24,024 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:18:24,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [671951268] [2022-04-15 04:18:24,024 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:18:24,024 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:18:24,024 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:18:24,043 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,044 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,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:24,084 INFO L263 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-15 04:18:24,099 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:18:24,100 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:18:27,635 INFO L272 TraceCheckUtils]: 0: Hoare triple {1237#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-15 04:18:27,635 INFO L290 TraceCheckUtils]: 1: Hoare triple {1237#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] {1237#true} is VALID [2022-04-15 04:18:27,635 INFO L290 TraceCheckUtils]: 2: Hoare triple {1237#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-15 04:18:27,635 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1237#true} {1237#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-15 04:18:27,635 INFO L272 TraceCheckUtils]: 4: Hoare triple {1237#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-15 04:18:27,635 INFO L290 TraceCheckUtils]: 5: Hoare triple {1237#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] {1237#true} is VALID [2022-04-15 04:18:27,636 INFO L272 TraceCheckUtils]: 6: Hoare triple {1237#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] {1237#true} is VALID [2022-04-15 04:18:27,636 INFO L290 TraceCheckUtils]: 7: Hoare triple {1237#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] {1237#true} is VALID [2022-04-15 04:18:27,636 INFO L290 TraceCheckUtils]: 8: Hoare triple {1237#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[] {1237#true} is VALID [2022-04-15 04:18:27,636 INFO L290 TraceCheckUtils]: 9: Hoare triple {1237#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-15 04:18:27,636 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1237#true} {1237#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] {1237#true} is VALID [2022-04-15 04:18:27,636 INFO L290 TraceCheckUtils]: 11: Hoare triple {1237#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] {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:27,637 INFO L290 TraceCheckUtils]: 12: Hoare triple {1275#(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] {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:27,637 INFO L290 TraceCheckUtils]: 13: Hoare triple {1275#(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| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:27,637 INFO L272 TraceCheckUtils]: 14: Hoare triple {1275#(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] {1237#true} is VALID [2022-04-15 04:18:27,638 INFO L290 TraceCheckUtils]: 15: Hoare triple {1237#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] {1288#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:18:27,638 INFO L290 TraceCheckUtils]: 16: Hoare triple {1288#(= |__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[] {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:18:27,638 INFO L290 TraceCheckUtils]: 17: Hoare triple {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:18:27,639 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} {1275#(and (= main_~z~0 0) (= 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] {1275#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:27,639 INFO L290 TraceCheckUtils]: 19: Hoare triple {1275#(and (= main_~z~0 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[] {1302#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:27,640 INFO L290 TraceCheckUtils]: 20: Hoare triple {1302#(and (= main_~z~0 0) (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] {1306#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= main_~z~0 main_~x~0) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:18:27,641 INFO L290 TraceCheckUtils]: 21: Hoare triple {1306#(and (= main_~b~0 (+ main_~y~0 1)) (<= 1 (mod main_~b~0 2)) (= main_~z~0 main_~x~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] {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:18:27,641 INFO L290 TraceCheckUtils]: 22: Hoare triple {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [78] 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] {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:18:27,642 INFO L290 TraceCheckUtils]: 23: Hoare triple {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-15 04:18:29,644 WARN L272 TraceCheckUtils]: 24: Hoare triple {1310#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [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] {1320#(<= 1 |__VERIFIER_assert_#in~cond|)} is UNKNOWN [2022-04-15 04:18:29,645 INFO L290 TraceCheckUtils]: 25: Hoare triple {1320#(<= 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] {1324#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:18:29,645 INFO L290 TraceCheckUtils]: 26: Hoare triple {1324#(<= 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[] {1238#false} is VALID [2022-04-15 04:18:29,645 INFO L290 TraceCheckUtils]: 27: Hoare triple {1238#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1238#false} is VALID [2022-04-15 04:18:29,645 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:29,645 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:19:28,211 INFO L290 TraceCheckUtils]: 27: Hoare triple {1238#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1238#false} is VALID [2022-04-15 04:19:28,211 INFO L290 TraceCheckUtils]: 26: Hoare triple {1324#(<= 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[] {1238#false} is VALID [2022-04-15 04:19:28,212 INFO L290 TraceCheckUtils]: 25: Hoare triple {1320#(<= 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] {1324#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:19:28,213 INFO L272 TraceCheckUtils]: 24: Hoare triple {1340#(= (+ 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] {1320#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:19:28,213 INFO L290 TraceCheckUtils]: 23: Hoare triple {1340#(= (+ 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| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1340#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:19:28,213 INFO L290 TraceCheckUtils]: 22: Hoare triple {1340#(= (+ 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] {1340#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:19:28,218 INFO L290 TraceCheckUtils]: 21: Hoare triple {1350#(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] {1340#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:19:28,220 INFO L290 TraceCheckUtils]: 20: Hoare triple {1354#(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] {1350#(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:28,220 INFO L290 TraceCheckUtils]: 19: Hoare triple {1354#(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[] {1354#(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:28,352 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} {1237#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] {1354#(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:28,353 INFO L290 TraceCheckUtils]: 17: Hoare triple {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:19:28,353 INFO L290 TraceCheckUtils]: 16: Hoare triple {1370#(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[] {1292#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:19:28,353 INFO L290 TraceCheckUtils]: 15: Hoare triple {1237#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] {1370#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 04:19:28,354 INFO L272 TraceCheckUtils]: 14: Hoare triple {1237#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] {1237#true} is VALID [2022-04-15 04:19:28,354 INFO L290 TraceCheckUtils]: 13: Hoare triple {1237#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1237#true} is VALID [2022-04-15 04:19:28,354 INFO L290 TraceCheckUtils]: 12: Hoare triple {1237#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] {1237#true} is VALID [2022-04-15 04:19:28,354 INFO L290 TraceCheckUtils]: 11: Hoare triple {1237#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] {1237#true} is VALID [2022-04-15 04:19:28,354 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1237#true} {1237#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] {1237#true} is VALID [2022-04-15 04:19:28,354 INFO L290 TraceCheckUtils]: 9: Hoare triple {1237#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-15 04:19:28,354 INFO L290 TraceCheckUtils]: 8: Hoare triple {1237#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[] {1237#true} is VALID [2022-04-15 04:19:28,354 INFO L290 TraceCheckUtils]: 7: Hoare triple {1237#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] {1237#true} is VALID [2022-04-15 04:19:28,354 INFO L272 TraceCheckUtils]: 6: Hoare triple {1237#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] {1237#true} is VALID [2022-04-15 04:19:28,354 INFO L290 TraceCheckUtils]: 5: Hoare triple {1237#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] {1237#true} is VALID [2022-04-15 04:19:28,355 INFO L272 TraceCheckUtils]: 4: Hoare triple {1237#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-15 04:19:28,355 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1237#true} {1237#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-15 04:19:28,355 INFO L290 TraceCheckUtils]: 2: Hoare triple {1237#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-15 04:19:28,355 INFO L290 TraceCheckUtils]: 1: Hoare triple {1237#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] {1237#true} is VALID [2022-04-15 04:19:28,355 INFO L272 TraceCheckUtils]: 0: Hoare triple {1237#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1237#true} is VALID [2022-04-15 04:19:28,355 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:28,355 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:19:28,355 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [731510845] [2022-04-15 04:19:28,355 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:19:28,355 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [671951268] [2022-04-15 04:19:28,355 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [671951268] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:19:28,356 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:19:28,356 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9] total 14 [2022-04-15 04:19:28,356 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1043011685] [2022-04-15 04:19:28,356 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:19:28,356 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.142857142857143) 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:28,356 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:19:28,357 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.142857142857143) 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:29,178 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:29,178 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 04:19:29,178 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:19:29,179 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 04:19:29,179 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=142, Unknown=2, NotChecked=0, Total=182 [2022-04-15 04:19:29,179 INFO L87 Difference]: Start difference. First operand 37 states and 41 transitions. Second operand has 14 states, 14 states have (on average 2.142857142857143) 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,243 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:43,554 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:45,219 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.56s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 04:19:56,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:19:56,704 INFO L93 Difference]: Finished difference Result 57 states and 65 transitions. [2022-04-15 04:19:56,704 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 04:19:56,704 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.142857142857143) 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:56,704 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:19:56,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.142857142857143) 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:56,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-15 04:19:56,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.142857142857143) 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:56,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-15 04:19:56,708 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 60 transitions. [2022-04-15 04:20:00,474 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:20:00,476 INFO L225 Difference]: With dead ends: 57 [2022-04-15 04:20:00,476 INFO L226 Difference]: Without dead ends: 55 [2022-04-15 04:20:00,477 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 42 SyntacticMatches, 3 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 19.4s TimeCoverageRelationStatistics Valid=79, Invalid=298, Unknown=3, NotChecked=0, Total=380 [2022-04-15 04:20:00,477 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 38 mSDsluCounter, 128 mSDsCounter, 0 mSdLazyCounter, 177 mSolverCounterSat, 19 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 8.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 38 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 198 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 177 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 8.4s IncrementalHoareTripleChecker+Time [2022-04-15 04:20:00,477 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [38 Valid, 150 Invalid, 198 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 177 Invalid, 2 Unknown, 0 Unchecked, 8.4s Time] [2022-04-15 04:20:00,478 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-15 04:20:00,504 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 51. [2022-04-15 04:20:00,505 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:20:00,505 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 51 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 39 states have internal predecessors, (45), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 04:20:00,505 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 51 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 39 states have internal predecessors, (45), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 04:20:00,505 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 51 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 39 states have internal predecessors, (45), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 04:20:00,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:00,507 INFO L93 Difference]: Finished difference Result 55 states and 63 transitions. [2022-04-15 04:20:00,507 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 63 transitions. [2022-04-15 04:20:00,507 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:20:00,507 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:20:00,508 INFO L74 IsIncluded]: Start isIncluded. First operand has 51 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 39 states have internal predecessors, (45), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 55 states. [2022-04-15 04:20:00,508 INFO L87 Difference]: Start difference. First operand has 51 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 39 states have internal predecessors, (45), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 55 states. [2022-04-15 04:20:00,509 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:00,509 INFO L93 Difference]: Finished difference Result 55 states and 63 transitions. [2022-04-15 04:20:00,509 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 63 transitions. [2022-04-15 04:20:00,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:20:00,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:20:00,509 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:20:00,510 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:20:00,510 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 39 states have internal predecessors, (45), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 04:20:00,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 59 transitions. [2022-04-15 04:20:00,511 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 59 transitions. Word has length 28 [2022-04-15 04:20:00,511 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:20:00,511 INFO L478 AbstractCegarLoop]: Abstraction has 51 states and 59 transitions. [2022-04-15 04:20:00,511 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.142857142857143) 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:00,511 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 59 transitions. [2022-04-15 04:20:00,512 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 04:20:00,512 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:20:00,512 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:00,531 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:00,712 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:00,713 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:20:00,713 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:20:00,713 INFO L85 PathProgramCache]: Analyzing trace with hash -1631509547, now seen corresponding path program 1 times [2022-04-15 04:20:00,713 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:20:00,713 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2030223946] [2022-04-15 04:20:00,713 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:20:00,713 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:20:00,723 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:20:00,723 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1655242005] [2022-04-15 04:20:00,723 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:20:00,723 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:20:00,723 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:20:00,724 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:00,725 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:00,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:20:00,759 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-15 04:20:00,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:20:00,768 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:20:04,255 INFO L272 TraceCheckUtils]: 0: Hoare triple {1691#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1691#true} is VALID [2022-04-15 04:20:04,255 INFO L290 TraceCheckUtils]: 1: Hoare triple {1691#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] {1691#true} is VALID [2022-04-15 04:20:04,256 INFO L290 TraceCheckUtils]: 2: Hoare triple {1691#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1691#true} is VALID [2022-04-15 04:20:04,256 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1691#true} {1691#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1691#true} is VALID [2022-04-15 04:20:04,256 INFO L272 TraceCheckUtils]: 4: Hoare triple {1691#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1691#true} is VALID [2022-04-15 04:20:04,256 INFO L290 TraceCheckUtils]: 5: Hoare triple {1691#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] {1691#true} is VALID [2022-04-15 04:20:04,256 INFO L272 TraceCheckUtils]: 6: Hoare triple {1691#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] {1691#true} is VALID [2022-04-15 04:20:04,256 INFO L290 TraceCheckUtils]: 7: Hoare triple {1691#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] {1717#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 04:20:04,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {1717#(= 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[] {1721#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:20:04,257 INFO L290 TraceCheckUtils]: 9: Hoare triple {1721#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1721#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:20:04,257 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1721#(not (= |assume_abort_if_not_#in~cond| 0))} {1691#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] {1728#(<= 1 main_~b~0)} is VALID [2022-04-15 04:20:04,258 INFO L290 TraceCheckUtils]: 11: Hoare triple {1728#(<= 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] {1732#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:20:04,258 INFO L290 TraceCheckUtils]: 12: Hoare triple {1732#(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] {1732#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:20:04,258 INFO L290 TraceCheckUtils]: 13: Hoare triple {1732#(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| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1732#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 04:20:04,259 INFO L272 TraceCheckUtils]: 14: Hoare triple {1732#(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] {1691#true} is VALID [2022-04-15 04:20:04,259 INFO L290 TraceCheckUtils]: 15: Hoare triple {1691#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] {1745#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:20:04,259 INFO L290 TraceCheckUtils]: 16: Hoare triple {1745#(= |__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[] {1749#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:04,259 INFO L290 TraceCheckUtils]: 17: Hoare triple {1749#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1749#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:04,260 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1749#(not (= |__VERIFIER_assert_#in~cond| 0))} {1732#(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] {1756#(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:04,260 INFO L290 TraceCheckUtils]: 19: Hoare triple {1756#(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[] {1756#(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:04,261 INFO L290 TraceCheckUtils]: 20: Hoare triple {1756#(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[] {1763#(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:04,262 INFO L290 TraceCheckUtils]: 21: Hoare triple {1763#(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] {1767#(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:04,262 INFO L290 TraceCheckUtils]: 22: Hoare triple {1767#(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] {1767#(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:04,263 INFO L290 TraceCheckUtils]: 23: Hoare triple {1767#(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| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1767#(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:04,265 INFO L272 TraceCheckUtils]: 24: Hoare triple {1767#(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] {1777#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:20:04,265 INFO L290 TraceCheckUtils]: 25: Hoare triple {1777#(<= 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] {1781#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:20:04,265 INFO L290 TraceCheckUtils]: 26: Hoare triple {1781#(<= 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[] {1692#false} is VALID [2022-04-15 04:20:04,265 INFO L290 TraceCheckUtils]: 27: Hoare triple {1692#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1692#false} is VALID [2022-04-15 04:20:04,266 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:04,266 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:20:37,447 INFO L290 TraceCheckUtils]: 27: Hoare triple {1692#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1692#false} is VALID [2022-04-15 04:20:37,448 INFO L290 TraceCheckUtils]: 26: Hoare triple {1781#(<= 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[] {1692#false} is VALID [2022-04-15 04:20:37,448 INFO L290 TraceCheckUtils]: 25: Hoare triple {1777#(<= 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] {1781#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:20:37,449 INFO L272 TraceCheckUtils]: 24: Hoare triple {1797#(= (+ 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] {1777#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:20:37,449 INFO L290 TraceCheckUtils]: 23: Hoare triple {1797#(= (+ 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| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1797#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:20:37,449 INFO L290 TraceCheckUtils]: 22: Hoare triple {1797#(= (+ 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] {1797#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:20:37,456 INFO L290 TraceCheckUtils]: 21: Hoare triple {1807#(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] {1797#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:20:37,456 INFO L290 TraceCheckUtils]: 20: Hoare triple {1811#(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[] {1807#(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:37,457 INFO L290 TraceCheckUtils]: 19: Hoare triple {1811#(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[] {1811#(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:37,461 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1749#(not (= |__VERIFIER_assert_#in~cond| 0))} {1818#(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] {1811#(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:37,461 INFO L290 TraceCheckUtils]: 17: Hoare triple {1749#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1749#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:37,461 INFO L290 TraceCheckUtils]: 16: Hoare triple {1828#(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[] {1749#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:37,462 INFO L290 TraceCheckUtils]: 15: Hoare triple {1691#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] {1828#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 04:20:37,462 INFO L272 TraceCheckUtils]: 14: Hoare triple {1818#(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] {1691#true} is VALID [2022-04-15 04:20:37,462 INFO L290 TraceCheckUtils]: 13: Hoare triple {1818#(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| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1818#(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:37,463 INFO L290 TraceCheckUtils]: 12: Hoare triple {1818#(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] {1818#(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:37,463 INFO L290 TraceCheckUtils]: 11: Hoare triple {1841#(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] {1818#(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:37,464 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1721#(not (= |assume_abort_if_not_#in~cond| 0))} {1691#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] {1841#(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:37,464 INFO L290 TraceCheckUtils]: 9: Hoare triple {1721#(not (= |assume_abort_if_not_#in~cond| 0))} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1721#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:20:37,464 INFO L290 TraceCheckUtils]: 8: Hoare triple {1854#(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[] {1721#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 04:20:37,465 INFO L290 TraceCheckUtils]: 7: Hoare triple {1691#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] {1854#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-15 04:20:37,465 INFO L272 TraceCheckUtils]: 6: Hoare triple {1691#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] {1691#true} is VALID [2022-04-15 04:20:37,465 INFO L290 TraceCheckUtils]: 5: Hoare triple {1691#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] {1691#true} is VALID [2022-04-15 04:20:37,465 INFO L272 TraceCheckUtils]: 4: Hoare triple {1691#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1691#true} is VALID [2022-04-15 04:20:37,465 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1691#true} {1691#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1691#true} is VALID [2022-04-15 04:20:37,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {1691#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1691#true} is VALID [2022-04-15 04:20:37,465 INFO L290 TraceCheckUtils]: 1: Hoare triple {1691#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] {1691#true} is VALID [2022-04-15 04:20:37,465 INFO L272 TraceCheckUtils]: 0: Hoare triple {1691#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1691#true} is VALID [2022-04-15 04:20:37,466 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:37,466 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:20:37,466 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2030223946] [2022-04-15 04:20:37,466 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:20:37,466 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1655242005] [2022-04-15 04:20:37,466 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1655242005] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:20:37,466 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:20:37,466 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 20 [2022-04-15 04:20:37,466 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [275826329] [2022-04-15 04:20:37,466 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:20:37,467 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:37,467 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:20:37,467 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:37,505 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:37,505 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-15 04:20:37,505 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:20:37,505 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-15 04:20:37,505 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=67, Invalid=313, Unknown=0, NotChecked=0, Total=380 [2022-04-15 04:20:37,506 INFO L87 Difference]: Start difference. First operand 51 states and 59 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:39,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:39,485 INFO L93 Difference]: Finished difference Result 86 states and 103 transitions. [2022-04-15 04:20:39,486 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-15 04:20:39,486 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:39,486 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:20:39,486 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:39,488 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 73 transitions. [2022-04-15 04:20:39,488 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:39,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 73 transitions. [2022-04-15 04:20:39,489 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 73 transitions. [2022-04-15 04:20:39,564 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 04:20:39,565 INFO L225 Difference]: With dead ends: 86 [2022-04-15 04:20:39,565 INFO L226 Difference]: Without dead ends: 79 [2022-04-15 04:20:39,566 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 36 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 122 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=127, Invalid=575, Unknown=0, NotChecked=0, Total=702 [2022-04-15 04:20:39,566 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 56 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 239 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 162 SdHoareTripleChecker+Invalid, 273 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 239 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-15 04:20:39,566 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [58 Valid, 162 Invalid, 273 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 239 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-15 04:20:39,567 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 79 states. [2022-04-15 04:20:39,592 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 79 to 76. [2022-04-15 04:20:39,592 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:20:39,592 INFO L82 GeneralOperation]: Start isEquivalent. First operand 79 states. Second operand has 76 states, 56 states have (on average 1.25) internal successors, (70), 60 states have internal predecessors, (70), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:20:39,593 INFO L74 IsIncluded]: Start isIncluded. First operand 79 states. Second operand has 76 states, 56 states have (on average 1.25) internal successors, (70), 60 states have internal predecessors, (70), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:20:39,593 INFO L87 Difference]: Start difference. First operand 79 states. Second operand has 76 states, 56 states have (on average 1.25) internal successors, (70), 60 states have internal predecessors, (70), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:20:39,595 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:39,595 INFO L93 Difference]: Finished difference Result 79 states and 95 transitions. [2022-04-15 04:20:39,595 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 95 transitions. [2022-04-15 04:20:39,595 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:20:39,595 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:20:39,595 INFO L74 IsIncluded]: Start isIncluded. First operand has 76 states, 56 states have (on average 1.25) internal successors, (70), 60 states have internal predecessors, (70), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 79 states. [2022-04-15 04:20:39,596 INFO L87 Difference]: Start difference. First operand has 76 states, 56 states have (on average 1.25) internal successors, (70), 60 states have internal predecessors, (70), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 79 states. [2022-04-15 04:20:39,597 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:39,597 INFO L93 Difference]: Finished difference Result 79 states and 95 transitions. [2022-04-15 04:20:39,597 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 95 transitions. [2022-04-15 04:20:39,598 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:20:39,598 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:20:39,598 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:20:39,598 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:20:39,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 76 states, 56 states have (on average 1.25) internal successors, (70), 60 states have internal predecessors, (70), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:20:39,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 76 states to 76 states and 92 transitions. [2022-04-15 04:20:39,600 INFO L78 Accepts]: Start accepts. Automaton has 76 states and 92 transitions. Word has length 28 [2022-04-15 04:20:39,600 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:20:39,600 INFO L478 AbstractCegarLoop]: Abstraction has 76 states and 92 transitions. [2022-04-15 04:20:39,600 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:39,600 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 92 transitions. [2022-04-15 04:20:39,600 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-15 04:20:39,600 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:20:39,601 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:39,619 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:39,811 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:39,812 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:20:39,812 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:20:39,812 INFO L85 PathProgramCache]: Analyzing trace with hash -357510123, now seen corresponding path program 1 times [2022-04-15 04:20:39,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:20:39,812 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2085018917] [2022-04-15 04:20:39,812 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:20:39,812 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:20:39,830 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:20:39,830 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1150254299] [2022-04-15 04:20:39,830 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:20:39,830 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:20:39,830 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:20:39,833 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:39,834 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:39,867 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:20:39,868 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-15 04:20:39,875 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 04:20:39,876 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 04:20:48,812 INFO L272 TraceCheckUtils]: 0: Hoare triple {2273#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:48,812 INFO L290 TraceCheckUtils]: 1: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,812 INFO L290 TraceCheckUtils]: 2: Hoare triple {2273#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2273#true} {2273#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L272 TraceCheckUtils]: 4: Hoare triple {2273#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L290 TraceCheckUtils]: 5: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L272 TraceCheckUtils]: 6: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L290 TraceCheckUtils]: 7: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L290 TraceCheckUtils]: 8: Hoare triple {2273#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[] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L290 TraceCheckUtils]: 9: Hoare triple {2273#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2273#true} {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L290 TraceCheckUtils]: 11: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L290 TraceCheckUtils]: 12: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L290 TraceCheckUtils]: 13: Hoare triple {2273#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2273#true} is VALID [2022-04-15 04:20:48,813 INFO L272 TraceCheckUtils]: 14: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,814 INFO L290 TraceCheckUtils]: 15: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,814 INFO L290 TraceCheckUtils]: 16: Hoare triple {2273#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[] {2273#true} is VALID [2022-04-15 04:20:48,814 INFO L290 TraceCheckUtils]: 17: Hoare triple {2273#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:48,814 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2273#true} {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,814 INFO L290 TraceCheckUtils]: 19: Hoare triple {2273#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[] {2273#true} is VALID [2022-04-15 04:20:48,814 INFO L290 TraceCheckUtils]: 20: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,814 INFO L290 TraceCheckUtils]: 21: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,814 INFO L290 TraceCheckUtils]: 22: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,814 INFO L290 TraceCheckUtils]: 23: Hoare triple {2273#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2273#true} is VALID [2022-04-15 04:20:48,814 INFO L272 TraceCheckUtils]: 24: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:48,815 INFO L290 TraceCheckUtils]: 25: Hoare triple {2273#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] {2353#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:20:48,815 INFO L290 TraceCheckUtils]: 26: Hoare triple {2353#(= |__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[] {2357#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:48,815 INFO L290 TraceCheckUtils]: 27: Hoare triple {2357#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2357#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:50,818 WARN L284 TraceCheckUtils]: 28: Hoare quadruple {2357#(not (= |__VERIFIER_assert_#in~cond| 0))} {2273#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] {2364#(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,818 INFO L290 TraceCheckUtils]: 29: Hoare triple {2364#(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[] {2368#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:20:50,820 INFO L272 TraceCheckUtils]: 30: Hoare triple {2368#(= 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] {2372#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:20:50,820 INFO L290 TraceCheckUtils]: 31: Hoare triple {2372#(<= 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] {2376#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:20:50,820 INFO L290 TraceCheckUtils]: 32: Hoare triple {2376#(<= 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[] {2274#false} is VALID [2022-04-15 04:20:50,821 INFO L290 TraceCheckUtils]: 33: Hoare triple {2274#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2274#false} is VALID [2022-04-15 04:20:50,821 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,821 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 04:20:55,391 INFO L290 TraceCheckUtils]: 33: Hoare triple {2274#false} [93] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2274#false} is VALID [2022-04-15 04:20:55,391 INFO L290 TraceCheckUtils]: 32: Hoare triple {2376#(<= 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[] {2274#false} is VALID [2022-04-15 04:20:55,392 INFO L290 TraceCheckUtils]: 31: Hoare triple {2372#(<= 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] {2376#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 04:20:55,392 INFO L272 TraceCheckUtils]: 30: Hoare triple {2368#(= 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] {2372#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 04:20:55,393 INFO L290 TraceCheckUtils]: 29: Hoare triple {2395#(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[] {2368#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-15 04:20:55,394 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2357#(not (= |__VERIFIER_assert_#in~cond| 0))} {2273#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] {2395#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-15 04:20:55,394 INFO L290 TraceCheckUtils]: 27: Hoare triple {2357#(not (= |__VERIFIER_assert_#in~cond| 0))} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2357#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:55,394 INFO L290 TraceCheckUtils]: 26: Hoare triple {2408#(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[] {2357#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 04:20:55,394 INFO L290 TraceCheckUtils]: 25: Hoare triple {2273#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] {2408#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 04:20:55,395 INFO L272 TraceCheckUtils]: 24: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,395 INFO L290 TraceCheckUtils]: 23: Hoare triple {2273#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2273#true} is VALID [2022-04-15 04:20:55,395 INFO L290 TraceCheckUtils]: 22: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,395 INFO L290 TraceCheckUtils]: 21: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,395 INFO L290 TraceCheckUtils]: 20: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,395 INFO L290 TraceCheckUtils]: 19: Hoare triple {2273#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[] {2273#true} is VALID [2022-04-15 04:20:55,395 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2273#true} {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,395 INFO L290 TraceCheckUtils]: 17: Hoare triple {2273#true} [95] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:55,395 INFO L290 TraceCheckUtils]: 16: Hoare triple {2273#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[] {2273#true} is VALID [2022-04-15 04:20:55,395 INFO L290 TraceCheckUtils]: 15: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,395 INFO L272 TraceCheckUtils]: 14: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,395 INFO L290 TraceCheckUtils]: 13: Hoare triple {2273#true} [83] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2273#true} is VALID [2022-04-15 04:20:55,396 INFO L290 TraceCheckUtils]: 12: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,396 INFO L290 TraceCheckUtils]: 11: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,396 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2273#true} {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,396 INFO L290 TraceCheckUtils]: 9: Hoare triple {2273#true} [84] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:55,396 INFO L290 TraceCheckUtils]: 8: Hoare triple {2273#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[] {2273#true} is VALID [2022-04-15 04:20:55,396 INFO L290 TraceCheckUtils]: 7: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,396 INFO L272 TraceCheckUtils]: 6: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,396 INFO L290 TraceCheckUtils]: 5: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,396 INFO L272 TraceCheckUtils]: 4: Hoare triple {2273#true} [69] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:55,396 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2273#true} {2273#true} [99] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:55,396 INFO L290 TraceCheckUtils]: 2: Hoare triple {2273#true} [73] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:55,397 INFO L290 TraceCheckUtils]: 1: Hoare triple {2273#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] {2273#true} is VALID [2022-04-15 04:20:55,397 INFO L272 TraceCheckUtils]: 0: Hoare triple {2273#true} [68] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#true} is VALID [2022-04-15 04:20:55,397 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:55,397 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 04:20:55,397 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2085018917] [2022-04-15 04:20:55,397 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 04:20:55,397 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1150254299] [2022-04-15 04:20:55,397 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1150254299] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 04:20:55,397 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 04:20:55,397 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-15 04:20:55,397 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2145378003] [2022-04-15 04:20:55,397 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-15 04:20:55,398 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:20:55,398 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 04:20:55,398 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:20:57,421 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:20:57,421 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 04:20:57,421 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-15 04:20:57,421 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 04:20:57,421 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-15 04:20:57,422 INFO L87 Difference]: Start difference. First operand 76 states and 92 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:20:59,447 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:59,846 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:20:59,846 INFO L93 Difference]: Finished difference Result 83 states and 98 transitions. [2022-04-15 04:20:59,846 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 04:20:59,846 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:20:59,847 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 04:20:59,847 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:20:59,847 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-15 04:20:59,847 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:20:59,848 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-15 04:20:59,848 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 39 transitions. [2022-04-15 04:21:03,878 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:03,880 INFO L225 Difference]: With dead ends: 83 [2022-04-15 04:21:03,880 INFO L226 Difference]: Without dead ends: 76 [2022-04-15 04:21:03,880 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:03,880 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 22 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 60 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 92 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 60 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.1s IncrementalHoareTripleChecker+Time [2022-04-15 04:21:03,881 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 92 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 60 Invalid, 1 Unknown, 0 Unchecked, 2.1s Time] [2022-04-15 04:21:03,881 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-15 04:21:03,902 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 76. [2022-04-15 04:21:03,902 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 04:21:03,903 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 76 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 60 states have internal predecessors, (67), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:21:03,903 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 76 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 60 states have internal predecessors, (67), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:21:03,903 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 76 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 60 states have internal predecessors, (67), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:21:03,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:21:03,905 INFO L93 Difference]: Finished difference Result 76 states and 89 transitions. [2022-04-15 04:21:03,905 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 89 transitions. [2022-04-15 04:21:03,905 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:21:03,905 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:21:03,905 INFO L74 IsIncluded]: Start isIncluded. First operand has 76 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 60 states have internal predecessors, (67), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 76 states. [2022-04-15 04:21:03,906 INFO L87 Difference]: Start difference. First operand has 76 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 60 states have internal predecessors, (67), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) Second operand 76 states. [2022-04-15 04:21:03,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 04:21:03,907 INFO L93 Difference]: Finished difference Result 76 states and 89 transitions. [2022-04-15 04:21:03,907 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 89 transitions. [2022-04-15 04:21:03,907 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 04:21:03,907 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 04:21:03,907 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 04:21:03,908 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 04:21:03,908 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 76 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 60 states have internal predecessors, (67), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (10), 7 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 04:21:03,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 76 states to 76 states and 89 transitions. [2022-04-15 04:21:03,909 INFO L78 Accepts]: Start accepts. Automaton has 76 states and 89 transitions. Word has length 34 [2022-04-15 04:21:03,909 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 04:21:03,909 INFO L478 AbstractCegarLoop]: Abstraction has 76 states and 89 transitions. [2022-04-15 04:21:03,910 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:03,910 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 89 transitions. [2022-04-15 04:21:03,910 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-15 04:21:03,910 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 04:21:03,910 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 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:03,943 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:04,126 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:04,126 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 04:21:04,127 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 04:21:04,127 INFO L85 PathProgramCache]: Analyzing trace with hash -782932132, now seen corresponding path program 2 times [2022-04-15 04:21:04,127 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 04:21:04,127 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [837425341] [2022-04-15 04:21:04,127 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 04:21:04,127 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 04:21:04,142 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 04:21:04,142 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [492907192] [2022-04-15 04:21:04,142 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 04:21:04,142 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 04:21:04,143 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 04:21:04,143 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:04,144 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:04,188 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 04:21:04,188 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-15 04:21:04,188 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-15 04:21:04,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-15 04:21:04,217 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-15 04:21:04,217 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-15 04:21:04,218 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-15 04:21:04,235 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:21:04,419 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:21:04,422 INFO L719 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 04:21:04,424 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-15 04:21:04,450 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-15 04:21:04,450 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-15 04:21:04,450 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-15 04:21:04,450 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-15 04:21:04,450 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-15 04:21:04,450 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L27 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L10 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L10-2 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L14 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L13-2 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L45 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L33-3 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L33-3 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L33-4 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-04-15 04:21:04,451 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-15 04:21:04,451 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:21:04,452 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 15.04 04:21:04 BasicIcfg [2022-04-15 04:21:04,452 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-15 04:21:04,453 INFO L158 Benchmark]: Toolchain (without parser) took 163917.59ms. Allocated memory was 185.6MB in the beginning and 287.3MB in the end (delta: 101.7MB). Free memory was 131.2MB in the beginning and 97.3MB in the end (delta: 33.9MB). Peak memory consumption was 136.2MB. Max. memory is 8.0GB. [2022-04-15 04:21:04,453 INFO L158 Benchmark]: CDTParser took 0.08ms. Allocated memory is still 185.6MB. Free memory is still 147.0MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-15 04:21:04,453 INFO L158 Benchmark]: CACSL2BoogieTranslator took 185.19ms. Allocated memory was 185.6MB in the beginning and 287.3MB in the end (delta: 101.7MB). Free memory was 130.9MB in the beginning and 261.9MB in the end (delta: -131.0MB). Peak memory consumption was 10.6MB. Max. memory is 8.0GB. [2022-04-15 04:21:04,453 INFO L158 Benchmark]: Boogie Preprocessor took 23.28ms. Allocated memory is still 287.3MB. Free memory was 261.9MB in the beginning and 260.5MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-15 04:21:04,453 INFO L158 Benchmark]: RCFGBuilder took 200.46ms. Allocated memory is still 287.3MB. Free memory was 260.5MB in the beginning and 248.9MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-15 04:21:04,453 INFO L158 Benchmark]: IcfgTransformer took 28.48ms. Allocated memory is still 287.3MB. Free memory was 248.9MB in the beginning and 247.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-15 04:21:04,454 INFO L158 Benchmark]: TraceAbstraction took 163466.43ms. Allocated memory is still 287.3MB. Free memory was 246.8MB in the beginning and 97.3MB in the end (delta: 149.5MB). Peak memory consumption was 150.5MB. Max. memory is 8.0GB. [2022-04-15 04:21:04,454 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.08ms. Allocated memory is still 185.6MB. Free memory is still 147.0MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 185.19ms. Allocated memory was 185.6MB in the beginning and 287.3MB in the end (delta: 101.7MB). Free memory was 130.9MB in the beginning and 261.9MB in the end (delta: -131.0MB). Peak memory consumption was 10.6MB. Max. memory is 8.0GB. * Boogie Preprocessor took 23.28ms. Allocated memory is still 287.3MB. Free memory was 261.9MB in the beginning and 260.5MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 200.46ms. Allocated memory is still 287.3MB. Free memory was 260.5MB in the beginning and 248.9MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 28.48ms. Allocated memory is still 287.3MB. Free memory was 248.9MB in the beginning and 247.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 163466.43ms. Allocated memory is still 287.3MB. Free memory was 246.8MB in the beginning and 97.3MB in the end (delta: 149.5MB). Peak memory consumption was 150.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)=11, 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=2, b=7, counter=0] [L29] x = a [L30] y = b [L31] z = 0 VAL [\old(counter)=0, a=2, b=7, counter=0, x=2, y=7, z=0] [L33] EXPR counter++ VAL [\old(counter)=0, a=2, b=7, counter=1, counter++=0, x=2, y=7, z=0] [L33] COND TRUE counter++<2 [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=2, b=7, counter=1, x=2, y=7, z=0] [L35] COND FALSE !(!(y != 0)) VAL [\old(counter)=0, a=2, b=7, counter=1, x=2, y=7, z=0] [L38] COND TRUE y % 2 == 1 [L39] z = z + x [L40] y = y - 1 VAL [\old(counter)=0, a=2, b=7, counter=1, x=2, y=6, z=2] [L42] x = 2 * x [L43] y = y / 2 VAL [\old(counter)=0, a=2, b=7, counter=1, x=4, y=3, z=2] [L33] EXPR counter++ VAL [\old(counter)=0, a=2, b=7, counter=2, counter++=1, x=4, y=3, z=2] [L33] COND TRUE counter++<2 [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=2, b=7, counter=2, x=4, y=3, z=2] [L35] COND FALSE !(!(y != 0)) VAL [\old(counter)=0, a=2, b=7, counter=2, x=4, y=3, z=2] [L38] COND TRUE y % 2 == 1 [L39] z = z + x [L40] y = y - 1 VAL [\old(counter)=0, a=2, b=7, counter=2, x=4, y=2, z=6] [L42] x = 2 * x [L43] y = y / 2 VAL [\old(counter)=0, a=2, b=7, counter=2, x=8, y=1, z=6] [L33] EXPR counter++ VAL [\old(counter)=0, a=2, b=7, counter=3, counter++=2, x=8, y=1, z=6] [L33] COND FALSE !(counter++<2) [L45] CALL __VERIFIER_assert(z == (long long) a * b) VAL [\old(cond)=0, \old(counter)=0, counter=3] [L13] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=3] [L15] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=3] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 30 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 163.4s, OverallIterations: 9, TraceHistogramMax: 3, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 40.5s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 3 mSolverCounterUnknown, 163 SdHoareTripleChecker+Valid, 11.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 158 mSDsluCounter, 746 SdHoareTripleChecker+Invalid, 11.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 553 mSDsCounter, 66 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 591 IncrementalHoareTripleChecker+Invalid, 660 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 66 mSolverCounterUnsat, 193 mSDtfsCounter, 591 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 316 GetRequests, 240 SyntacticMatches, 6 SemanticMatches, 70 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 187 ImplicationChecksByTransitivity, 20.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=76occurred in iteration=7, InterpolantAutomatonStates: 62, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.2s AutomataMinimizationTime, 8 MinimizatonAttempts, 14 StatesRemovedByMinimization, 5 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 117.3s InterpolantComputationTime, 233 NumberOfCodeBlocks, 233 NumberOfCodeBlocksAsserted, 10 NumberOfCheckSat, 301 ConstructedInterpolants, 0 QuantifiedInterpolants, 1329 SizeOfPredicates, 21 NumberOfNonLiveVariables, 705 ConjunctsInSsa, 96 ConjunctsInUnsatCore, 12 InterpolantComputations, 4 PerfectInterpolantSequences, 35/54 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:21:04,502 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...