java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerBplInline.xml --rcfgbuilder.size.of.a.code.block SingleStatement -i ../../../trunk/examples/programs/heapseparator/speedup-poc-dd-6-unlimited.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-1c58c86 [2019-05-15 10:30:06,782 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-05-15 10:30:06,784 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-05-15 10:30:06,797 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-05-15 10:30:06,797 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-05-15 10:30:06,798 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-05-15 10:30:06,800 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-05-15 10:30:06,802 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-05-15 10:30:06,803 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-05-15 10:30:06,804 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-05-15 10:30:06,805 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-05-15 10:30:06,806 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-05-15 10:30:06,807 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-05-15 10:30:06,808 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-05-15 10:30:06,809 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-05-15 10:30:06,810 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-05-15 10:30:06,811 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-05-15 10:30:06,813 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-05-15 10:30:06,815 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-05-15 10:30:06,816 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-05-15 10:30:06,817 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-05-15 10:30:06,819 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-05-15 10:30:06,822 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-05-15 10:30:06,822 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-05-15 10:30:06,822 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-05-15 10:30:06,823 INFO L174 SettingsManager]: Resetting IcfgToChc preferences to default values [2019-05-15 10:30:06,824 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-05-15 10:30:06,825 INFO L177 SettingsManager]: ReqToTest provides no preferences, ignoring... [2019-05-15 10:30:06,825 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-05-15 10:30:06,826 INFO L174 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2019-05-15 10:30:06,827 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-05-15 10:30:06,828 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-05-15 10:30:06,829 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-05-15 10:30:06,829 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-05-15 10:30:06,830 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-05-15 10:30:06,830 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-05-15 10:30:06,831 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-05-15 10:30:06,832 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-05-15 10:30:06,832 INFO L181 SettingsManager]: Finished resetting all preferences to default values... Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder: Size of a code block -> SingleStatement [2019-05-15 10:30:06,861 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-05-15 10:30:06,875 INFO L259 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-05-15 10:30:06,878 INFO L215 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-05-15 10:30:06,880 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-05-15 10:30:06,880 INFO L275 PluginConnector]: Boogie PL CUP Parser initialized [2019-05-15 10:30:06,881 INFO L430 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-6-unlimited.bpl [2019-05-15 10:30:06,881 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/heapseparator/speedup-poc-dd-6-unlimited.bpl' [2019-05-15 10:30:06,920 INFO L297 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-05-15 10:30:06,922 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-05-15 10:30:06,922 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-05-15 10:30:06,923 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-05-15 10:30:06,923 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2019-05-15 10:30:06,941 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:30:06" (1/1) ... [2019-05-15 10:30:06,959 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:30:06" (1/1) ... [2019-05-15 10:30:06,995 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-05-15 10:30:06,996 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-05-15 10:30:06,996 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-05-15 10:30:06,996 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2019-05-15 10:30:07,007 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:30:06" (1/1) ... [2019-05-15 10:30:07,007 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:30:06" (1/1) ... [2019-05-15 10:30:07,009 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:30:06" (1/1) ... [2019-05-15 10:30:07,011 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:30:06" (1/1) ... [2019-05-15 10:30:07,014 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:30:06" (1/1) ... [2019-05-15 10:30:07,024 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:30:06" (1/1) ... [2019-05-15 10:30:07,026 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:30:06" (1/1) ... [2019-05-15 10:30:07,032 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-05-15 10:30:07,033 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-05-15 10:30:07,033 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-05-15 10:30:07,033 INFO L275 PluginConnector]: RCFGBuilder initialized [2019-05-15 10:30:07,034 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:30:06" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2019-05-15 10:30:07,092 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2019-05-15 10:30:07,092 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-05-15 10:30:07,093 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-05-15 10:30:07,651 INFO L278 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-05-15 10:30:07,651 INFO L283 CfgBuilder]: Removed 3 assume(true) statements. [2019-05-15 10:30:07,652 INFO L202 PluginConnector]: Adding new model speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.05 10:30:07 BoogieIcfgContainer [2019-05-15 10:30:07,653 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-05-15 10:30:07,654 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-05-15 10:30:07,654 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-05-15 10:30:07,657 INFO L275 PluginConnector]: TraceAbstraction initialized [2019-05-15 10:30:07,657 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:30:06" (1/2) ... [2019-05-15 10:30:07,658 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@15d79eca and model type speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.05 10:30:07, skipping insertion in model container [2019-05-15 10:30:07,659 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "speedup-poc-dd-6-unlimited.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.05 10:30:07" (2/2) ... [2019-05-15 10:30:07,660 INFO L109 eAbstractionObserver]: Analyzing ICFG speedup-poc-dd-6-unlimited.bpl [2019-05-15 10:30:07,670 INFO L152 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2019-05-15 10:30:07,678 INFO L164 ceAbstractionStarter]: Appying trace abstraction to program that has 6 error locations. [2019-05-15 10:30:07,695 INFO L252 AbstractCegarLoop]: Starting to check reachability of 6 error locations. [2019-05-15 10:30:07,722 INFO L127 ementStrategyFactory]: Using default assertion order modulation [2019-05-15 10:30:07,723 INFO L377 AbstractCegarLoop]: Interprodecural is true [2019-05-15 10:30:07,723 INFO L378 AbstractCegarLoop]: Hoare is false [2019-05-15 10:30:07,723 INFO L379 AbstractCegarLoop]: Compute interpolants for ForwardPredicates [2019-05-15 10:30:07,723 INFO L380 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-05-15 10:30:07,724 INFO L381 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-05-15 10:30:07,724 INFO L382 AbstractCegarLoop]: Difference is false [2019-05-15 10:30:07,724 INFO L383 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-05-15 10:30:07,724 INFO L388 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-05-15 10:30:07,740 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states. [2019-05-15 10:30:07,748 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2019-05-15 10:30:07,748 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:30:07,749 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:30:07,752 INFO L418 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:30:07,758 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:30:07,758 INFO L82 PathProgramCache]: Analyzing trace with hash -1129791902, now seen corresponding path program 1 times [2019-05-15 10:30:07,809 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:30:07,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:07,882 INFO L256 TraceCheckSpWp]: Trace formula consists of 28 conjuncts, 13 conjunts are in the unsatisfiable core [2019-05-15 10:30:07,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:07,910 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:30:08,008 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:08,008 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:08,043 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:08,043 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:08,044 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:30:08,052 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:08,053 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_13|]. (= |#valid| (store |v_#valid_13| ULTIMATE.start_main_p1 1)) [2019-05-15 10:30:08,053 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:30:08,406 WARN L188 SmtUtils]: Spent 218.00 ms on a formula simplification that was a NOOP. DAG size: 16 [2019-05-15 10:30:08,406 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:08,407 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 39 [2019-05-15 10:30:08,420 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:08,506 INFO L567 ElimStorePlain]: treesize reduction 14, result has 51.7 percent of original size [2019-05-15 10:30:08,507 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:08,508 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:17, output treesize:15 [2019-05-15 10:30:08,517 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:08,518 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_14|]. (and (= 1 (select |v_#valid_14| ULTIMATE.start_main_p1)) (= |#valid| (store |v_#valid_14| ULTIMATE.start_main_p2 1)) (<= (select |v_#valid_14| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:30:08,518 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1)) [2019-05-15 10:30:08,631 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:08,631 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 16 treesize of output 26 [2019-05-15 10:30:08,653 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:08,667 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:08,668 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:08,668 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:20, output treesize:13 [2019-05-15 10:30:08,672 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:08,672 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_15|]. (and (<= (select |v_#valid_15| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |v_#valid_15| ULTIMATE.start_main_p1)) (= (select |v_#valid_15| ULTIMATE.start_main_p2) 1)) [2019-05-15 10:30:08,672 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-05-15 10:30:08,784 WARN L188 SmtUtils]: Spent 104.00 ms on a formula simplification that was a NOOP. DAG size: 10 [2019-05-15 10:30:08,822 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:08,823 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:08,873 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:08,874 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:08,874 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:19, output treesize:18 [2019-05-15 10:30:08,890 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:08,890 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_16|]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (store |v_#valid_16| ULTIMATE.start_main_p4 1) |#valid|)) [2019-05-15 10:30:08,891 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-05-15 10:30:09,099 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:09,100 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:30:09,130 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:09,141 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:09,141 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:09,142 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:23, output treesize:17 [2019-05-15 10:30:09,144 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:09,144 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_17|]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |v_#valid_17| ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (<= (select |v_#valid_17| ULTIMATE.start_main_p5) 0)) [2019-05-15 10:30:09,144 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-05-15 10:30:09,479 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:09,480 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:09,495 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:09,496 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:09,497 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:23, output treesize:22 [2019-05-15 10:30:09,499 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:09,500 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_37|]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_37| ULTIMATE.start_main_p1 0) |#memory_int|)) [2019-05-15 10:30:09,500 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-05-15 10:30:09,679 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:30:09,681 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:09,697 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:09,725 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:09,726 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:28, output treesize:27 [2019-05-15 10:30:09,736 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:09,737 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_38|, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (store |v_#memory_int_38| ULTIMATE.start_main_p2 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_38| ULTIMATE.start_main_p1))) [2019-05-15 10:30:09,737 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-05-15 10:30:09,892 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 22 [2019-05-15 10:30:09,897 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:09,916 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:09,938 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:09,938 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:33, output treesize:32 [2019-05-15 10:30:09,941 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:09,942 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_39|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_39| ULTIMATE.start_main_p2) 0) (= (store |v_#memory_int_39| ULTIMATE.start_main_p3 0) |#memory_int|) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_39| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:30:09,942 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-05-15 10:30:10,126 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:10,127 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 22 treesize of output 72 [2019-05-15 10:30:10,131 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:10,219 INFO L567 ElimStorePlain]: treesize reduction 42, result has 46.8 percent of original size [2019-05-15 10:30:10,243 INFO L496 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:10,244 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:38, output treesize:37 [2019-05-15 10:30:10,250 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:10,250 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_40|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_40| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_40| ULTIMATE.start_main_p2) 0) (= (store |v_#memory_int_40| ULTIMATE.start_main_p4 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_40| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:30:10,250 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-05-15 10:30:10,428 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:10,429 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 22 treesize of output 72 [2019-05-15 10:30:10,431 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:10,483 INFO L567 ElimStorePlain]: treesize reduction 42, result has 44.0 percent of original size [2019-05-15 10:30:10,488 INFO L496 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:10,489 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:34, output treesize:33 [2019-05-15 10:30:10,496 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:10,497 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_41|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_41| ULTIMATE.start_main_p2)) (= (select |v_#memory_int_41| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_41| ULTIMATE.start_main_p5 0) |#memory_int|) (= (select |v_#memory_int_41| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:30:10,497 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-05-15 10:30:10,644 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:10,644 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 22 treesize of output 72 [2019-05-15 10:30:10,646 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:10,701 INFO L567 ElimStorePlain]: treesize reduction 42, result has 44.0 percent of original size [2019-05-15 10:30:10,708 INFO L496 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:10,708 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:34, output treesize:33 [2019-05-15 10:30:10,716 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:10,717 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_42|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_42| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_42| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_42| ULTIMATE.start_main_p2) 0) (= |#memory_int| (store |v_#memory_int_42| ULTIMATE.start_main_p6 0)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-05-15 10:30:10,717 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2, ULTIMATE.start_main_p6]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:30:10,749 INFO L273 TraceCheckUtils]: 0: Hoare triple {30#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {30#true} is VALID [2019-05-15 10:30:10,753 INFO L273 TraceCheckUtils]: 1: Hoare triple {30#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {38#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:30:10,754 INFO L273 TraceCheckUtils]: 2: Hoare triple {38#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {42#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} is VALID [2019-05-15 10:30:10,755 INFO L273 TraceCheckUtils]: 3: Hoare triple {42#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {46#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:30:10,755 INFO L273 TraceCheckUtils]: 4: Hoare triple {46#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {50#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:30:10,757 INFO L273 TraceCheckUtils]: 5: Hoare triple {50#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {54#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:30:10,758 INFO L273 TraceCheckUtils]: 6: Hoare triple {54#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {54#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:30:10,759 INFO L273 TraceCheckUtils]: 7: Hoare triple {54#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p1 := 0]; {61#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:30:10,764 INFO L273 TraceCheckUtils]: 8: Hoare triple {61#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := 0]; {65#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:10,766 INFO L273 TraceCheckUtils]: 9: Hoare triple {65#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p3 := 0]; {69#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)))} is VALID [2019-05-15 10:30:10,767 INFO L273 TraceCheckUtils]: 10: Hoare triple {69#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)))} #memory_int := #memory_int[main_p4 := 0]; {73#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-05-15 10:30:10,772 INFO L273 TraceCheckUtils]: 11: Hoare triple {73#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} #memory_int := #memory_int[main_p5 := 0]; {73#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-05-15 10:30:10,773 INFO L273 TraceCheckUtils]: 12: Hoare triple {73#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} #memory_int := #memory_int[main_p6 := 0]; {73#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} is VALID [2019-05-15 10:30:10,774 INFO L273 TraceCheckUtils]: 13: Hoare triple {73#(and (exists ((ULTIMATE.start_main_p2 Int) (ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0))} assume !(#memory_int[main_p1] >= 0); {31#false} is VALID [2019-05-15 10:30:10,777 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:30:10,780 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-05-15 10:30:10,780 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2019-05-15 10:30:10,784 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 14 [2019-05-15 10:30:10,786 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:30:10,789 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2019-05-15 10:30:10,828 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:10,828 INFO L454 AbstractCegarLoop]: Interpolant automaton has 11 states [2019-05-15 10:30:10,836 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2019-05-15 10:30:10,836 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2019-05-15 10:30:10,838 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 11 states. [2019-05-15 10:30:11,443 WARN L188 SmtUtils]: Spent 102.00 ms on a formula simplification. DAG size of input: 34 DAG size of output: 32 [2019-05-15 10:30:12,695 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:12,695 INFO L93 Difference]: Finished difference Result 66 states and 86 transitions. [2019-05-15 10:30:12,695 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2019-05-15 10:30:12,696 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 14 [2019-05-15 10:30:12,696 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:30:12,697 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2019-05-15 10:30:12,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 89 transitions. [2019-05-15 10:30:12,707 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2019-05-15 10:30:12,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 89 transitions. [2019-05-15 10:30:12,713 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 89 transitions. [2019-05-15 10:30:12,893 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:12,909 INFO L225 Difference]: With dead ends: 66 [2019-05-15 10:30:12,910 INFO L226 Difference]: Without dead ends: 58 [2019-05-15 10:30:12,912 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 2 SyntacticMatches, 2 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=86, Invalid=186, Unknown=0, NotChecked=0, Total=272 [2019-05-15 10:30:12,929 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2019-05-15 10:30:12,941 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 26. [2019-05-15 10:30:12,941 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:30:12,942 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand 26 states. [2019-05-15 10:30:12,942 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand 26 states. [2019-05-15 10:30:12,942 INFO L87 Difference]: Start difference. First operand 58 states. Second operand 26 states. [2019-05-15 10:30:12,948 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:12,949 INFO L93 Difference]: Finished difference Result 58 states and 78 transitions. [2019-05-15 10:30:12,949 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 78 transitions. [2019-05-15 10:30:12,950 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:12,950 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:12,950 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand 58 states. [2019-05-15 10:30:12,950 INFO L87 Difference]: Start difference. First operand 26 states. Second operand 58 states. [2019-05-15 10:30:12,956 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:12,956 INFO L93 Difference]: Finished difference Result 58 states and 78 transitions. [2019-05-15 10:30:12,956 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 78 transitions. [2019-05-15 10:30:12,957 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:12,957 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:12,958 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:30:12,958 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:30:12,958 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2019-05-15 10:30:12,960 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 37 transitions. [2019-05-15 10:30:12,962 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 37 transitions. Word has length 14 [2019-05-15 10:30:12,962 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:30:12,962 INFO L475 AbstractCegarLoop]: Abstraction has 26 states and 37 transitions. [2019-05-15 10:30:12,962 INFO L476 AbstractCegarLoop]: Interpolant automaton has 11 states. [2019-05-15 10:30:12,962 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 37 transitions. [2019-05-15 10:30:12,963 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2019-05-15 10:30:12,963 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:30:12,963 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:30:12,964 INFO L418 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:30:12,964 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:30:12,964 INFO L82 PathProgramCache]: Analyzing trace with hash -663811206, now seen corresponding path program 1 times [2019-05-15 10:30:12,965 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:30:12,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:12,994 INFO L256 TraceCheckSpWp]: Trace formula consists of 29 conjuncts, 10 conjunts are in the unsatisfiable core [2019-05-15 10:30:13,012 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:13,013 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:30:13,025 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:13,026 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,031 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:13,032 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,032 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:30:13,033 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:13,034 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_18|]. (= |#valid| (store |v_#valid_18| ULTIMATE.start_main_p1 1)) [2019-05-15 10:30:13,034 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:30:13,069 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:13,070 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:30:13,074 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,076 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:13,076 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,076 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:4 [2019-05-15 10:30:13,079 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:13,079 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_19|]. (and (= 1 (select |v_#valid_19| ULTIMATE.start_main_p1)) (<= (select |v_#valid_19| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:30:13,079 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) [2019-05-15 10:30:13,138 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:13,139 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,146 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:13,147 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,147 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:10 [2019-05-15 10:30:13,149 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:13,149 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_43|]. (and (= (store |v_#memory_int_43| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:30:13,150 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:30:13,172 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:30:13,172 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,179 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:13,181 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:13,181 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:16, output treesize:15 [2019-05-15 10:30:13,183 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:13,183 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_44|, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_44| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_44| ULTIMATE.start_main_p2 0) |#memory_int|)) [2019-05-15 10:30:13,184 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:30:13,239 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:13,239 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:13,241 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,268 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:13,270 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:13,271 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:13,273 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:13,273 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_45|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (store |v_#memory_int_45| ULTIMATE.start_main_p3 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_45| ULTIMATE.start_main_p2) 0) (= (select |v_#memory_int_45| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:30:13,274 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-05-15 10:30:13,402 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:13,402 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:13,404 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,429 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:13,431 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:13,432 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:13,434 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:13,434 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_46|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_46| ULTIMATE.start_main_p2)) (= (store |v_#memory_int_46| ULTIMATE.start_main_p4 0) |#memory_int|) (= 0 (select |v_#memory_int_46| ULTIMATE.start_main_p1))) [2019-05-15 10:30:13,434 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-05-15 10:30:13,494 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:13,495 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:13,496 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,523 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:13,526 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:13,526 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:13,530 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:13,530 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_47|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_47| ULTIMATE.start_main_p5 0) |#memory_int|) (= (select |v_#memory_int_47| ULTIMATE.start_main_p2) 0) (= (select |v_#memory_int_47| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:30:13,531 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:30:13,596 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:13,597 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:13,599 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,625 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:13,627 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:13,628 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:13,630 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:13,630 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_48|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2]. (and (= 0 (select |v_#memory_int_48| ULTIMATE.start_main_p2)) (= (store |v_#memory_int_48| ULTIMATE.start_main_p6 0) |#memory_int|) (= 0 (select |v_#memory_int_48| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:30:13,631 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:30:13,659 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 19 [2019-05-15 10:30:13,676 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:13,686 INFO L567 ElimStorePlain]: treesize reduction 4, result has 73.3 percent of original size [2019-05-15 10:30:13,687 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:13,687 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:25, output treesize:11 [2019-05-15 10:30:13,691 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:13,691 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_49|, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_49| ULTIMATE.start_main_p1))) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_49| ULTIMATE.start_main_p1 (+ .cse0 1)) |#memory_int|) (= 0 .cse0) (= 0 (select |v_#memory_int_49| ULTIMATE.start_main_p2)))) [2019-05-15 10:30:13,691 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:30:13,705 INFO L273 TraceCheckUtils]: 0: Hoare triple {302#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {302#true} is VALID [2019-05-15 10:30:13,706 INFO L273 TraceCheckUtils]: 1: Hoare triple {302#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {310#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:30:13,706 INFO L273 TraceCheckUtils]: 2: Hoare triple {310#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {314#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:13,707 INFO L273 TraceCheckUtils]: 3: Hoare triple {314#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {314#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:13,708 INFO L273 TraceCheckUtils]: 4: Hoare triple {314#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {314#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:13,716 INFO L273 TraceCheckUtils]: 5: Hoare triple {314#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {314#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:13,717 INFO L273 TraceCheckUtils]: 6: Hoare triple {314#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {314#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:13,721 INFO L273 TraceCheckUtils]: 7: Hoare triple {314#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p1 := 0]; {330#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:30:13,722 INFO L273 TraceCheckUtils]: 8: Hoare triple {330#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := 0]; {334#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:13,723 INFO L273 TraceCheckUtils]: 9: Hoare triple {334#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p3 := 0]; {334#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:13,741 INFO L273 TraceCheckUtils]: 10: Hoare triple {334#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p4 := 0]; {334#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:13,742 INFO L273 TraceCheckUtils]: 11: Hoare triple {334#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p5 := 0]; {334#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:13,743 INFO L273 TraceCheckUtils]: 12: Hoare triple {334#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p6 := 0]; {334#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:13,744 INFO L273 TraceCheckUtils]: 13: Hoare triple {334#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {350#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))))} is VALID [2019-05-15 10:30:13,745 INFO L273 TraceCheckUtils]: 14: Hoare triple {350#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))))} assume !(#memory_int[main_p1] >= 0); {303#false} is VALID [2019-05-15 10:30:13,747 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:30:13,747 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:30:13,748 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [6] total 6 [2019-05-15 10:30:13,749 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 15 [2019-05-15 10:30:13,750 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:30:13,750 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2019-05-15 10:30:13,779 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:13,780 INFO L454 AbstractCegarLoop]: Interpolant automaton has 7 states [2019-05-15 10:30:13,780 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2019-05-15 10:30:13,780 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2019-05-15 10:30:13,781 INFO L87 Difference]: Start difference. First operand 26 states and 37 transitions. Second operand 7 states. [2019-05-15 10:30:14,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:14,735 INFO L93 Difference]: Finished difference Result 59 states and 85 transitions. [2019-05-15 10:30:14,735 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2019-05-15 10:30:14,735 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 15 [2019-05-15 10:30:14,736 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:30:14,736 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2019-05-15 10:30:14,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 79 transitions. [2019-05-15 10:30:14,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2019-05-15 10:30:14,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 79 transitions. [2019-05-15 10:30:14,741 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 79 transitions. [2019-05-15 10:30:14,860 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:14,864 INFO L225 Difference]: With dead ends: 59 [2019-05-15 10:30:14,864 INFO L226 Difference]: Without dead ends: 59 [2019-05-15 10:30:14,865 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 5 SyntacticMatches, 4 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=36, Invalid=74, Unknown=0, NotChecked=0, Total=110 [2019-05-15 10:30:14,866 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2019-05-15 10:30:14,869 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 28. [2019-05-15 10:30:14,869 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:30:14,869 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand 28 states. [2019-05-15 10:30:14,870 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand 28 states. [2019-05-15 10:30:14,870 INFO L87 Difference]: Start difference. First operand 59 states. Second operand 28 states. [2019-05-15 10:30:14,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:14,874 INFO L93 Difference]: Finished difference Result 59 states and 85 transitions. [2019-05-15 10:30:14,874 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 85 transitions. [2019-05-15 10:30:14,875 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:14,875 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:14,875 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand 59 states. [2019-05-15 10:30:14,875 INFO L87 Difference]: Start difference. First operand 28 states. Second operand 59 states. [2019-05-15 10:30:14,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:14,879 INFO L93 Difference]: Finished difference Result 59 states and 85 transitions. [2019-05-15 10:30:14,880 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 85 transitions. [2019-05-15 10:30:14,880 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:14,881 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:14,881 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:30:14,881 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:30:14,881 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2019-05-15 10:30:14,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 51 transitions. [2019-05-15 10:30:14,883 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 51 transitions. Word has length 15 [2019-05-15 10:30:14,883 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:30:14,884 INFO L475 AbstractCegarLoop]: Abstraction has 28 states and 51 transitions. [2019-05-15 10:30:14,884 INFO L476 AbstractCegarLoop]: Interpolant automaton has 7 states. [2019-05-15 10:30:14,884 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 51 transitions. [2019-05-15 10:30:14,884 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2019-05-15 10:30:14,884 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:30:14,885 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:30:14,885 INFO L418 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:30:14,885 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:30:14,885 INFO L82 PathProgramCache]: Analyzing trace with hash -663810710, now seen corresponding path program 1 times [2019-05-15 10:30:14,886 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:30:14,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:14,910 INFO L256 TraceCheckSpWp]: Trace formula consists of 29 conjuncts, 10 conjunts are in the unsatisfiable core [2019-05-15 10:30:14,916 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:14,917 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:30:14,928 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:14,929 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:14,932 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:14,932 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:14,932 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:30:14,934 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:14,934 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_20|]. (= |#valid| (store |v_#valid_20| ULTIMATE.start_main_p1 1)) [2019-05-15 10:30:14,934 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:30:14,971 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:14,971 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:30:14,975 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:14,978 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:14,978 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:14,978 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:4 [2019-05-15 10:30:14,983 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:14,983 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_21|]. (and (<= (select |v_#valid_21| ULTIMATE.start_main_p2) 0) (= 1 (select |v_#valid_21| ULTIMATE.start_main_p1))) [2019-05-15 10:30:14,983 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) [2019-05-15 10:30:15,006 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:15,006 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:15,011 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:15,012 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:15,012 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:10 [2019-05-15 10:30:15,014 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:15,015 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_50|]. (and (= (store |v_#memory_int_50| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:30:15,015 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:30:15,042 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:30:15,044 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:15,050 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:15,051 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:15,052 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:16, output treesize:15 [2019-05-15 10:30:15,054 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:15,054 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_51|, ULTIMATE.start_main_p2]. (and (= (store |v_#memory_int_51| ULTIMATE.start_main_p2 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_51| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:30:15,054 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:30:15,111 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:15,112 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:15,113 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:15,157 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:15,177 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:15,177 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:15,179 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:15,180 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_52|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= |#memory_int| (store |v_#memory_int_52| ULTIMATE.start_main_p3 0)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_52| ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_52| ULTIMATE.start_main_p1))) [2019-05-15 10:30:15,180 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-05-15 10:30:15,304 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:15,305 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:15,306 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:15,330 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:15,336 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:15,337 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:15,339 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:15,339 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_53|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_53| ULTIMATE.start_main_p4 0)) (= (select |v_#memory_int_53| ULTIMATE.start_main_p2) 0) (= (select |v_#memory_int_53| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:30:15,339 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-05-15 10:30:15,422 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:15,423 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:15,424 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:15,450 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:15,452 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:15,452 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:15,524 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:15,524 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 22 treesize of output 88 [2019-05-15 10:30:15,526 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:15,566 INFO L567 ElimStorePlain]: treesize reduction 42, result has 37.3 percent of original size [2019-05-15 10:30:15,569 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:15,569 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:26, output treesize:25 [2019-05-15 10:30:15,572 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:15,572 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_55|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_55| ULTIMATE.start_main_p2) 0) (= (select |v_#memory_int_55| ULTIMATE.start_main_p5) 0) (= 0 (select |v_#memory_int_55| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_55| ULTIMATE.start_main_p6 0) |#memory_int|)) [2019-05-15 10:30:15,572 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:30:15,647 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:15,647 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 26 treesize of output 75 [2019-05-15 10:30:15,649 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:15,680 INFO L567 ElimStorePlain]: treesize reduction 20, result has 58.3 percent of original size [2019-05-15 10:30:15,684 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:15,685 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:30, output treesize:28 [2019-05-15 10:30:27,704 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:27,704 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_56|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_56| ULTIMATE.start_main_p5))) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_56| ULTIMATE.start_main_p1) 0) (= |#memory_int| (store |v_#memory_int_56| ULTIMATE.start_main_p5 (+ .cse0 1))) (= (select |v_#memory_int_56| ULTIMATE.start_main_p2) 0) (= .cse0 0))) [2019-05-15 10:30:27,704 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p5]. (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))) [2019-05-15 10:30:27,746 INFO L273 TraceCheckUtils]: 0: Hoare triple {566#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {566#true} is VALID [2019-05-15 10:30:27,749 INFO L273 TraceCheckUtils]: 1: Hoare triple {566#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {574#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:30:27,757 INFO L273 TraceCheckUtils]: 2: Hoare triple {574#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {578#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:27,758 INFO L273 TraceCheckUtils]: 3: Hoare triple {578#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {578#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:27,758 INFO L273 TraceCheckUtils]: 4: Hoare triple {578#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {578#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:27,759 INFO L273 TraceCheckUtils]: 5: Hoare triple {578#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {578#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:27,759 INFO L273 TraceCheckUtils]: 6: Hoare triple {578#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {578#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:27,760 INFO L273 TraceCheckUtils]: 7: Hoare triple {578#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p1 := 0]; {594#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:30:27,761 INFO L273 TraceCheckUtils]: 8: Hoare triple {594#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := 0]; {598#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:27,762 INFO L273 TraceCheckUtils]: 9: Hoare triple {598#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p3 := 0]; {598#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:27,764 INFO L273 TraceCheckUtils]: 10: Hoare triple {598#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p4 := 0]; {598#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:27,765 INFO L273 TraceCheckUtils]: 11: Hoare triple {598#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p5 := 0]; {608#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:27,767 INFO L273 TraceCheckUtils]: 12: Hoare triple {608#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p6 := 0]; {608#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:27,769 INFO L273 TraceCheckUtils]: 13: Hoare triple {608#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {615#(exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int)) (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))))} is VALID [2019-05-15 10:30:27,771 INFO L273 TraceCheckUtils]: 14: Hoare triple {615#(exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int)) (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))))} assume !(#memory_int[main_p1] >= 0); {567#false} is VALID [2019-05-15 10:30:27,773 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:30:27,773 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:30:27,773 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2019-05-15 10:30:27,774 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 15 [2019-05-15 10:30:27,774 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:30:27,774 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-05-15 10:30:27,798 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:27,798 INFO L454 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-05-15 10:30:27,799 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-05-15 10:30:27,799 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2019-05-15 10:30:27,799 INFO L87 Difference]: Start difference. First operand 28 states and 51 transitions. Second operand 8 states. [2019-05-15 10:30:28,833 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:28,834 INFO L93 Difference]: Finished difference Result 59 states and 91 transitions. [2019-05-15 10:30:28,834 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2019-05-15 10:30:28,834 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 15 [2019-05-15 10:30:28,834 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:30:28,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-05-15 10:30:28,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 79 transitions. [2019-05-15 10:30:28,837 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-05-15 10:30:28,839 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 79 transitions. [2019-05-15 10:30:28,839 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 79 transitions. [2019-05-15 10:30:28,996 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:28,999 INFO L225 Difference]: With dead ends: 59 [2019-05-15 10:30:28,999 INFO L226 Difference]: Without dead ends: 59 [2019-05-15 10:30:28,999 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 5 SyntacticMatches, 3 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=49, Invalid=107, Unknown=0, NotChecked=0, Total=156 [2019-05-15 10:30:29,000 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2019-05-15 10:30:29,003 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 32. [2019-05-15 10:30:29,003 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:30:29,003 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand 32 states. [2019-05-15 10:30:29,003 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand 32 states. [2019-05-15 10:30:29,004 INFO L87 Difference]: Start difference. First operand 59 states. Second operand 32 states. [2019-05-15 10:30:29,007 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:29,007 INFO L93 Difference]: Finished difference Result 59 states and 91 transitions. [2019-05-15 10:30:29,007 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 91 transitions. [2019-05-15 10:30:29,008 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:29,008 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:29,008 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 59 states. [2019-05-15 10:30:29,009 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 59 states. [2019-05-15 10:30:29,012 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:29,012 INFO L93 Difference]: Finished difference Result 59 states and 91 transitions. [2019-05-15 10:30:29,012 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 91 transitions. [2019-05-15 10:30:29,013 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:29,013 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:29,013 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:30:29,014 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:30:29,014 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2019-05-15 10:30:29,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 58 transitions. [2019-05-15 10:30:29,016 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 58 transitions. Word has length 15 [2019-05-15 10:30:29,016 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:30:29,016 INFO L475 AbstractCegarLoop]: Abstraction has 32 states and 58 transitions. [2019-05-15 10:30:29,016 INFO L476 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-05-15 10:30:29,016 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 58 transitions. [2019-05-15 10:30:29,017 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2019-05-15 10:30:29,017 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:30:29,017 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:30:29,018 INFO L418 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:30:29,018 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:30:29,018 INFO L82 PathProgramCache]: Analyzing trace with hash -663810648, now seen corresponding path program 1 times [2019-05-15 10:30:29,019 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:30:29,043 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:29,045 WARN L254 TraceCheckSpWp]: Trace formula consists of 29 conjuncts, 15 conjunts are in the unsatisfiable core [2019-05-15 10:30:29,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:29,068 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:30:29,086 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:29,086 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,093 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:29,093 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,093 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:30:29,095 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:29,095 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_22|]. (= |#valid| (store |v_#valid_22| ULTIMATE.start_main_p1 1)) [2019-05-15 10:30:29,095 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:30:29,137 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:29,138 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 39 [2019-05-15 10:30:29,141 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,161 INFO L567 ElimStorePlain]: treesize reduction 14, result has 51.7 percent of original size [2019-05-15 10:30:29,162 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,162 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:17, output treesize:15 [2019-05-15 10:30:29,166 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:29,166 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_23|]. (and (= 1 (select |v_#valid_23| ULTIMATE.start_main_p1)) (= |#valid| (store |v_#valid_23| ULTIMATE.start_main_p2 1)) (<= (select |v_#valid_23| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:30:29,166 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1)) [2019-05-15 10:30:29,213 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:29,213 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:29,214 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,240 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:29,240 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,240 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:29,316 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:29,317 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 22 treesize of output 88 [2019-05-15 10:30:29,318 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,356 INFO L567 ElimStorePlain]: treesize reduction 42, result has 37.3 percent of original size [2019-05-15 10:30:29,357 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,357 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:26, output treesize:25 [2019-05-15 10:30:29,478 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:29,479 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 9 case distinctions, treesize of input 27 treesize of output 134 [2019-05-15 10:30:29,480 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,532 INFO L567 ElimStorePlain]: treesize reduction 56, result has 34.9 percent of original size [2019-05-15 10:30:29,532 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,532 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:31, output treesize:30 [2019-05-15 10:30:29,647 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:29,648 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 1 disjoint index pairs (out of 15 index pairs), introduced 6 new quantified variables, introduced 14 case distinctions, treesize of input 31 treesize of output 131 [2019-05-15 10:30:29,840 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,924 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:29,924 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:29,925 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:35, output treesize:25 [2019-05-15 10:30:29,927 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:29,927 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_27|]. (and (<= (select |v_#valid_27| ULTIMATE.start_main_p6) 0) (= 1 (select |v_#valid_27| ULTIMATE.start_main_p2)) (= 1 (select |v_#valid_27| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#valid_27| ULTIMATE.start_main_p5) 1) (= (select |v_#valid_27| ULTIMATE.start_main_p4) 1) (= 1 (select |v_#valid_27| ULTIMATE.start_main_p3))) [2019-05-15 10:30:29,927 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:29,997 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:29,997 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:30,018 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:30,019 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:30,019 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:31, output treesize:30 [2019-05-15 10:30:30,022 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:30,022 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_57|]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (store |v_#memory_int_57| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:30,022 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:30,088 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:30:30,089 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:30,104 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:30,106 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:30,107 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:36, output treesize:35 [2019-05-15 10:30:30,110 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:30,111 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_58|, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_58| ULTIMATE.start_main_p1) 0) (= (store |v_#memory_int_58| ULTIMATE.start_main_p2 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:30,111 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:30,195 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:30,196 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:30,197 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:30,242 INFO L567 ElimStorePlain]: treesize reduction 28, result has 58.8 percent of original size [2019-05-15 10:30:30,248 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:30,248 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:41, output treesize:40 [2019-05-15 10:30:30,253 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:30,253 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_59|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= 0 (select |v_#memory_int_59| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |v_#memory_int_59| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= (store |v_#memory_int_59| ULTIMATE.start_main_p3 0) |#memory_int|)) [2019-05-15 10:30:30,253 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:30,345 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:30,346 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:30,347 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:30,388 INFO L567 ElimStorePlain]: treesize reduction 28, result has 56.3 percent of original size [2019-05-15 10:30:30,394 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:30,394 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:37, output treesize:36 [2019-05-15 10:30:30,399 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:30,400 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_60|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (= (store |v_#memory_int_60| ULTIMATE.start_main_p4 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_60| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |v_#memory_int_60| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:30,400 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:30,510 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:30,510 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:30,511 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:30,554 INFO L567 ElimStorePlain]: treesize reduction 28, result has 53.3 percent of original size [2019-05-15 10:30:30,558 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:30,559 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:33, output treesize:32 [2019-05-15 10:30:30,563 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:30,563 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_61|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= 0 (select |v_#memory_int_61| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= (store |v_#memory_int_61| ULTIMATE.start_main_p5 0) |#memory_int|) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= (select |v_#memory_int_61| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:30:30,563 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:30,668 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 22 [2019-05-15 10:30:30,670 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:30,682 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:30,686 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:30,686 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:29, output treesize:28 [2019-05-15 10:30:30,744 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 27 [2019-05-15 10:30:30,748 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:30,771 INFO L567 ElimStorePlain]: treesize reduction 8, result has 73.3 percent of original size [2019-05-15 10:30:30,777 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:30,778 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:38, output treesize:22 [2019-05-15 10:30:30,792 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:30,793 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_63|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_63| ULTIMATE.start_main_p6))) (and (= 0 .cse0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (store |v_#memory_int_63| ULTIMATE.start_main_p6 (+ .cse0 (- 1))) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= (select |v_#memory_int_63| ULTIMATE.start_main_p1) 0) (= (select |v_#memory_int_63| ULTIMATE.start_main_p2) 0))) [2019-05-15 10:30:30,793 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))) [2019-05-15 10:30:30,824 INFO L273 TraceCheckUtils]: 0: Hoare triple {837#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {837#true} is VALID [2019-05-15 10:30:30,828 INFO L273 TraceCheckUtils]: 1: Hoare triple {837#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {845#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:30:30,829 INFO L273 TraceCheckUtils]: 2: Hoare triple {845#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {849#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} is VALID [2019-05-15 10:30:30,830 INFO L273 TraceCheckUtils]: 3: Hoare triple {849#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {853#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} is VALID [2019-05-15 10:30:30,831 INFO L273 TraceCheckUtils]: 4: Hoare triple {853#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {857#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} is VALID [2019-05-15 10:30:30,832 INFO L273 TraceCheckUtils]: 5: Hoare triple {857#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {861#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:30,832 INFO L273 TraceCheckUtils]: 6: Hoare triple {861#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {865#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:30,834 INFO L273 TraceCheckUtils]: 7: Hoare triple {865#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p1 := 0]; {869#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:30,839 INFO L273 TraceCheckUtils]: 8: Hoare triple {869#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p2 := 0]; {873#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:30,840 INFO L273 TraceCheckUtils]: 9: Hoare triple {873#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p3 := 0]; {877#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:30,841 INFO L273 TraceCheckUtils]: 10: Hoare triple {877#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p4 := 0]; {881#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:30,842 INFO L273 TraceCheckUtils]: 11: Hoare triple {881#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p5 := 0]; {885#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:30,843 INFO L273 TraceCheckUtils]: 12: Hoare triple {885#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p6 := 0]; {889#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))} is VALID [2019-05-15 10:30:30,844 INFO L273 TraceCheckUtils]: 13: Hoare triple {889#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))} #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; {893#(and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:30,845 INFO L273 TraceCheckUtils]: 14: Hoare triple {893#(and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} assume !(#memory_int[main_p1] >= 0); {838#false} is VALID [2019-05-15 10:30:30,848 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:30:30,848 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:30:30,848 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2019-05-15 10:30:30,848 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 15 [2019-05-15 10:30:30,849 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:30:30,849 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2019-05-15 10:30:30,884 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:30,884 INFO L454 AbstractCegarLoop]: Interpolant automaton has 15 states [2019-05-15 10:30:30,884 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2019-05-15 10:30:30,885 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=165, Unknown=0, NotChecked=0, Total=210 [2019-05-15 10:30:30,885 INFO L87 Difference]: Start difference. First operand 32 states and 58 transitions. Second operand 15 states. [2019-05-15 10:30:32,811 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:32,811 INFO L93 Difference]: Finished difference Result 70 states and 113 transitions. [2019-05-15 10:30:32,811 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2019-05-15 10:30:32,811 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 15 [2019-05-15 10:30:32,812 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:30:32,812 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2019-05-15 10:30:32,813 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 96 transitions. [2019-05-15 10:30:32,813 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2019-05-15 10:30:32,815 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 96 transitions. [2019-05-15 10:30:32,815 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 96 transitions. [2019-05-15 10:30:32,999 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:33,001 INFO L225 Difference]: With dead ends: 70 [2019-05-15 10:30:33,001 INFO L226 Difference]: Without dead ends: 68 [2019-05-15 10:30:33,002 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=112, Invalid=268, Unknown=0, NotChecked=0, Total=380 [2019-05-15 10:30:33,002 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 68 states. [2019-05-15 10:30:33,005 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 68 to 33. [2019-05-15 10:30:33,005 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:30:33,005 INFO L82 GeneralOperation]: Start isEquivalent. First operand 68 states. Second operand 33 states. [2019-05-15 10:30:33,005 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand 33 states. [2019-05-15 10:30:33,006 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 33 states. [2019-05-15 10:30:33,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:33,009 INFO L93 Difference]: Finished difference Result 68 states and 111 transitions. [2019-05-15 10:30:33,010 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 111 transitions. [2019-05-15 10:30:33,010 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:33,010 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:33,011 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand 68 states. [2019-05-15 10:30:33,011 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 68 states. [2019-05-15 10:30:33,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:33,014 INFO L93 Difference]: Finished difference Result 68 states and 111 transitions. [2019-05-15 10:30:33,014 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 111 transitions. [2019-05-15 10:30:33,015 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:33,015 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:33,015 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:30:33,016 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:30:33,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2019-05-15 10:30:33,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 70 transitions. [2019-05-15 10:30:33,018 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 70 transitions. Word has length 15 [2019-05-15 10:30:33,018 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:30:33,018 INFO L475 AbstractCegarLoop]: Abstraction has 33 states and 70 transitions. [2019-05-15 10:30:33,018 INFO L476 AbstractCegarLoop]: Interpolant automaton has 15 states. [2019-05-15 10:30:33,018 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 70 transitions. [2019-05-15 10:30:33,019 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2019-05-15 10:30:33,019 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:30:33,019 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:30:33,019 INFO L418 AbstractCegarLoop]: === Iteration 5 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:30:33,019 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:30:33,020 INFO L82 PathProgramCache]: Analyzing trace with hash -663810522, now seen corresponding path program 1 times [2019-05-15 10:30:33,020 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:30:33,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:33,074 INFO L256 TraceCheckSpWp]: Trace formula consists of 29 conjuncts, 8 conjunts are in the unsatisfiable core [2019-05-15 10:30:33,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:33,085 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:30:33,104 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:33,104 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:33,106 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:33,106 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:33,106 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:30:33,108 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:33,108 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_28|]. (= |#valid| (store |v_#valid_28| ULTIMATE.start_main_p2 1)) [2019-05-15 10:30:33,108 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p2) 1) [2019-05-15 10:30:33,139 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:33,139 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:30:33,142 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:33,144 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:33,144 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:33,144 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:4 [2019-05-15 10:30:33,146 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:33,146 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_29|]. (and (= 1 (select |v_#valid_29| ULTIMATE.start_main_p2)) (<= (select |v_#valid_29| ULTIMATE.start_main_p3) 0)) [2019-05-15 10:30:33,146 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) [2019-05-15 10:30:33,165 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:33,165 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:33,169 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:33,169 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:33,170 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:10 [2019-05-15 10:30:33,172 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:33,172 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_64|]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= |#memory_int| (store |v_#memory_int_64| ULTIMATE.start_main_p2 0))) [2019-05-15 10:30:33,172 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:30:33,195 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:30:33,206 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:33,211 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:33,213 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:33,213 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:16, output treesize:15 [2019-05-15 10:30:33,216 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:33,217 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_65|, ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_65| ULTIMATE.start_main_p2) 0) (= |#memory_int| (store |v_#memory_int_65| ULTIMATE.start_main_p3 0))) [2019-05-15 10:30:33,217 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-05-15 10:30:33,265 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:33,265 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:33,266 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:33,293 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:33,295 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:33,296 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:33,299 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:33,299 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_66|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3]. (and (= (store |v_#memory_int_66| ULTIMATE.start_main_p4 0) |#memory_int|) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_66| ULTIMATE.start_main_p3) 0) (= (select |v_#memory_int_66| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:30:33,299 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-05-15 10:30:33,356 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:33,356 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:33,357 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:33,384 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:33,387 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:33,387 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:33,391 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:33,391 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_67|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p3]. (and (= (select |v_#memory_int_67| ULTIMATE.start_main_p3) 0) (= (store |v_#memory_int_67| ULTIMATE.start_main_p5 0) |#memory_int|) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_67| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:30:33,391 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p3]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-05-15 10:30:33,439 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:33,439 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:33,440 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:33,467 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:33,469 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:33,470 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:33,485 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:33,485 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_68|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p3]. (and (= (select |v_#memory_int_68| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_68| ULTIMATE.start_main_p3) 0) (= (store |v_#memory_int_68| ULTIMATE.start_main_p6 0) |#memory_int|)) [2019-05-15 10:30:33,486 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p6]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:30:33,501 INFO L273 TraceCheckUtils]: 0: Hoare triple {1145#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {1145#true} is VALID [2019-05-15 10:30:33,502 INFO L273 TraceCheckUtils]: 1: Hoare triple {1145#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {1145#true} is VALID [2019-05-15 10:30:33,503 INFO L273 TraceCheckUtils]: 2: Hoare triple {1145#true} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {1156#(= (select |#valid| ULTIMATE.start_main_p2) 1)} is VALID [2019-05-15 10:30:33,503 INFO L273 TraceCheckUtils]: 3: Hoare triple {1156#(= (select |#valid| ULTIMATE.start_main_p2) 1)} SUMMARY for call main_p3 := malloc(); srcloc: L18 {1160#(not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2))} is VALID [2019-05-15 10:30:33,506 INFO L273 TraceCheckUtils]: 4: Hoare triple {1160#(not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {1160#(not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2))} is VALID [2019-05-15 10:30:33,507 INFO L273 TraceCheckUtils]: 5: Hoare triple {1160#(not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {1160#(not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2))} is VALID [2019-05-15 10:30:33,508 INFO L273 TraceCheckUtils]: 6: Hoare triple {1160#(not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {1160#(not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2))} is VALID [2019-05-15 10:30:33,508 INFO L273 TraceCheckUtils]: 7: Hoare triple {1160#(not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2))} #memory_int := #memory_int[main_p1 := 0]; {1160#(not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2))} is VALID [2019-05-15 10:30:33,515 INFO L273 TraceCheckUtils]: 8: Hoare triple {1160#(not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2))} #memory_int := #memory_int[main_p2 := 0]; {1176#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-05-15 10:30:33,516 INFO L273 TraceCheckUtils]: 9: Hoare triple {1176#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p3 := 0]; {1180#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-05-15 10:30:33,517 INFO L273 TraceCheckUtils]: 10: Hoare triple {1180#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} #memory_int := #memory_int[main_p4 := 0]; {1180#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-05-15 10:30:33,518 INFO L273 TraceCheckUtils]: 11: Hoare triple {1180#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} #memory_int := #memory_int[main_p5 := 0]; {1180#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-05-15 10:30:33,519 INFO L273 TraceCheckUtils]: 12: Hoare triple {1180#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} #memory_int := #memory_int[main_p6 := 0]; {1180#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-05-15 10:30:33,519 INFO L273 TraceCheckUtils]: 13: Hoare triple {1180#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} assume #memory_int[main_p1] >= 0; {1180#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} is VALID [2019-05-15 10:30:33,520 INFO L273 TraceCheckUtils]: 14: Hoare triple {1180#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (exists ((ULTIMATE.start_main_p3 Int)) (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))))} assume !(#memory_int[main_p2] <= 0); {1146#false} is VALID [2019-05-15 10:30:33,521 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:30:33,521 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-05-15 10:30:33,521 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2019-05-15 10:30:33,522 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 15 [2019-05-15 10:30:33,522 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:30:33,522 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2019-05-15 10:30:33,539 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:33,540 INFO L454 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-05-15 10:30:33,540 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-05-15 10:30:33,540 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2019-05-15 10:30:33,540 INFO L87 Difference]: Start difference. First operand 33 states and 70 transitions. Second operand 6 states. [2019-05-15 10:30:33,921 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:33,922 INFO L93 Difference]: Finished difference Result 45 states and 84 transitions. [2019-05-15 10:30:33,922 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2019-05-15 10:30:33,922 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 15 [2019-05-15 10:30:33,922 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:30:33,922 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-05-15 10:30:33,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 58 transitions. [2019-05-15 10:30:33,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2019-05-15 10:30:33,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 58 transitions. [2019-05-15 10:30:33,925 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 58 transitions. [2019-05-15 10:30:34,057 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:34,059 INFO L225 Difference]: With dead ends: 45 [2019-05-15 10:30:34,059 INFO L226 Difference]: Without dead ends: 45 [2019-05-15 10:30:34,059 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 7 SyntacticMatches, 3 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=28, Invalid=44, Unknown=0, NotChecked=0, Total=72 [2019-05-15 10:30:34,060 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2019-05-15 10:30:34,063 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 35. [2019-05-15 10:30:34,063 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:30:34,063 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand 35 states. [2019-05-15 10:30:34,063 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand 35 states. [2019-05-15 10:30:34,063 INFO L87 Difference]: Start difference. First operand 45 states. Second operand 35 states. [2019-05-15 10:30:34,071 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:34,071 INFO L93 Difference]: Finished difference Result 45 states and 84 transitions. [2019-05-15 10:30:34,072 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 84 transitions. [2019-05-15 10:30:34,073 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:34,074 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:34,074 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 45 states. [2019-05-15 10:30:34,074 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 45 states. [2019-05-15 10:30:34,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:34,077 INFO L93 Difference]: Finished difference Result 45 states and 84 transitions. [2019-05-15 10:30:34,078 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 84 transitions. [2019-05-15 10:30:34,078 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:34,078 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:34,078 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:30:34,078 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:30:34,079 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2019-05-15 10:30:34,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 77 transitions. [2019-05-15 10:30:34,086 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 77 transitions. Word has length 15 [2019-05-15 10:30:34,088 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:30:34,088 INFO L475 AbstractCegarLoop]: Abstraction has 35 states and 77 transitions. [2019-05-15 10:30:34,088 INFO L476 AbstractCegarLoop]: Interpolant automaton has 6 states. [2019-05-15 10:30:34,088 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 77 transitions. [2019-05-15 10:30:34,091 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2019-05-15 10:30:34,091 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:30:34,091 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:30:34,091 INFO L418 AbstractCegarLoop]: === Iteration 6 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:30:34,092 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:30:34,092 INFO L82 PathProgramCache]: Analyzing trace with hash -663810834, now seen corresponding path program 1 times [2019-05-15 10:30:34,093 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:30:34,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:34,140 WARN L254 TraceCheckSpWp]: Trace formula consists of 29 conjuncts, 16 conjunts are in the unsatisfiable core [2019-05-15 10:30:34,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:34,147 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:30:34,162 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:34,162 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:34,168 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:34,168 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:34,168 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:30:34,171 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:34,171 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_30|]. (= |#valid| (store |v_#valid_30| ULTIMATE.start_main_p1 1)) [2019-05-15 10:30:34,171 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:30:34,235 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:34,235 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 39 [2019-05-15 10:30:34,237 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:34,253 INFO L567 ElimStorePlain]: treesize reduction 14, result has 51.7 percent of original size [2019-05-15 10:30:34,253 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:34,254 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:17, output treesize:15 [2019-05-15 10:30:34,258 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:34,258 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_31|]. (and (= |#valid| (store |v_#valid_31| ULTIMATE.start_main_p2 1)) (= 1 (select |v_#valid_31| ULTIMATE.start_main_p1)) (<= (select |v_#valid_31| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:30:34,258 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1)) [2019-05-15 10:30:34,310 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:34,310 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:34,311 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:34,338 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:34,338 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:34,339 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:34,518 WARN L188 SmtUtils]: Spent 142.00 ms on a formula simplification. DAG size of input: 46 DAG size of output: 38 [2019-05-15 10:30:34,518 INFO L341 Elim1Store]: treesize reduction 16, result has 83.7 percent of original size [2019-05-15 10:30:34,519 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 8 case distinctions, treesize of input 27 treesize of output 99 [2019-05-15 10:30:34,524 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:34,573 INFO L567 ElimStorePlain]: treesize reduction 42, result has 46.8 percent of original size [2019-05-15 10:30:34,573 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:34,573 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:31, output treesize:37 [2019-05-15 10:30:34,577 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:34,578 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_33|]. (and (<= (select |v_#valid_33| ULTIMATE.start_main_p4) 0) (= (store |v_#valid_33| ULTIMATE.start_main_p4 1) |#valid|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#valid_33| ULTIMATE.start_main_p1) 1) (= (select |v_#valid_33| ULTIMATE.start_main_p3) 1) (= (select |v_#valid_33| ULTIMATE.start_main_p2) 1)) [2019-05-15 10:30:34,578 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |#valid| ULTIMATE.start_main_p2) 1) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4))) [2019-05-15 10:30:34,688 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:34,689 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 4 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 27 treesize of output 110 [2019-05-15 10:30:34,690 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:34,759 INFO L567 ElimStorePlain]: treesize reduction 56, result has 42.9 percent of original size [2019-05-15 10:30:34,759 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:34,760 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:43, output treesize:42 [2019-05-15 10:30:34,951 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:34,951 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 4 disjoint index pairs (out of 15 index pairs), introduced 6 new quantified variables, introduced 11 case distinctions, treesize of input 31 treesize of output 107 [2019-05-15 10:30:35,124 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:35,140 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:35,140 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:35,140 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:47, output treesize:37 [2019-05-15 10:30:35,143 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:35,143 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_35|]. (and (= 1 (select |v_#valid_35| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= 1 (select |v_#valid_35| ULTIMATE.start_main_p4)) (= 1 (select |v_#valid_35| ULTIMATE.start_main_p3)) (= (select |v_#valid_35| ULTIMATE.start_main_p5) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (<= (select |v_#valid_35| ULTIMATE.start_main_p6) 0) (= (select |v_#valid_35| ULTIMATE.start_main_p2) 1) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4))) [2019-05-15 10:30:35,144 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:35,203 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:35,203 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:35,222 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:35,223 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:35,223 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:43, output treesize:42 [2019-05-15 10:30:35,243 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:35,243 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_69|]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (store |v_#memory_int_69| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:35,243 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:35,346 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 5 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:30:35,347 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:35,373 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:35,377 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:35,378 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:48, output treesize:47 [2019-05-15 10:30:35,382 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:35,382 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_70|, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= |#memory_int| (store |v_#memory_int_70| ULTIMATE.start_main_p2 0)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |v_#memory_int_70| ULTIMATE.start_main_p1))) [2019-05-15 10:30:35,382 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:35,534 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:35,534 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 7 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:35,535 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:35,603 INFO L567 ElimStorePlain]: treesize reduction 28, result has 65.0 percent of original size [2019-05-15 10:30:35,609 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:35,610 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:53, output treesize:52 [2019-05-15 10:30:35,615 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:35,615 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_71|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (store |v_#memory_int_71| ULTIMATE.start_main_p3 0) |#memory_int|) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= 0 (select |v_#memory_int_71| ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_71| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:35,615 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:36,108 WARN L188 SmtUtils]: Spent 174.00 ms on a formula simplification. DAG size of input: 37 DAG size of output: 28 [2019-05-15 10:30:36,150 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 6 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 22 [2019-05-15 10:30:36,151 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:36,172 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:36,176 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:36,176 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:45, output treesize:44 [2019-05-15 10:30:36,298 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:36,298 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 7 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 22 treesize of output 72 [2019-05-15 10:30:36,299 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:36,382 INFO L567 ElimStorePlain]: treesize reduction 42, result has 53.8 percent of original size [2019-05-15 10:30:36,387 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:36,387 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:50, output treesize:49 [2019-05-15 10:30:36,392 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:36,393 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_73|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= 0 (select |v_#memory_int_73| ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_73| ULTIMATE.start_main_p1) 0) (= (select |v_#memory_int_73| ULTIMATE.start_main_p2) 0) (= (store |v_#memory_int_73| ULTIMATE.start_main_p5 0) |#memory_int|) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:36,393 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:36,506 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 6 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 30 [2019-05-15 10:30:36,509 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:36,530 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:36,539 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:36,539 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:46, output treesize:45 [2019-05-15 10:30:36,543 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:36,544 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_74|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_74| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_74| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (store |v_#memory_int_74| ULTIMATE.start_main_p6 0) |#memory_int|) (= (select |v_#memory_int_74| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4))) [2019-05-15 10:30:36,544 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:30:36,636 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 6 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 35 [2019-05-15 10:30:36,639 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:36,674 INFO L567 ElimStorePlain]: treesize reduction 12, result has 74.5 percent of original size [2019-05-15 10:30:36,681 INFO L496 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:36,681 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:55, output treesize:35 [2019-05-15 10:30:36,698 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:36,698 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_75|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2, ULTIMATE.start_main_p6]. (let ((.cse0 (select |v_#memory_int_75| ULTIMATE.start_main_p4))) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_75| ULTIMATE.start_main_p1) 0) (= .cse0 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_75| ULTIMATE.start_main_p2) 0) (= (store |v_#memory_int_75| ULTIMATE.start_main_p4 (+ .cse0 (- 1))) |#memory_int|) (= (select |v_#memory_int_75| ULTIMATE.start_main_p6) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))) [2019-05-15 10:30:36,699 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:30:36,733 INFO L273 TraceCheckUtils]: 0: Hoare triple {1371#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {1371#true} is VALID [2019-05-15 10:30:36,734 INFO L273 TraceCheckUtils]: 1: Hoare triple {1371#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {1379#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:30:36,735 INFO L273 TraceCheckUtils]: 2: Hoare triple {1379#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {1383#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} is VALID [2019-05-15 10:30:36,736 INFO L273 TraceCheckUtils]: 3: Hoare triple {1383#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {1387#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} is VALID [2019-05-15 10:30:36,737 INFO L273 TraceCheckUtils]: 4: Hoare triple {1387#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {1391#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |#valid| ULTIMATE.start_main_p2) 1) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-05-15 10:30:36,738 INFO L273 TraceCheckUtils]: 5: Hoare triple {1391#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |#valid| ULTIMATE.start_main_p2) 1) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {1395#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |#valid| ULTIMATE.start_main_p2) 1) (= 1 (select |#valid| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-05-15 10:30:36,739 INFO L273 TraceCheckUtils]: 6: Hoare triple {1395#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= (select |#valid| ULTIMATE.start_main_p2) 1) (= 1 (select |#valid| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {1399#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:36,740 INFO L273 TraceCheckUtils]: 7: Hoare triple {1399#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p1 := 0]; {1403#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:36,742 INFO L273 TraceCheckUtils]: 8: Hoare triple {1403#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p2 := 0]; {1407#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:36,743 INFO L273 TraceCheckUtils]: 9: Hoare triple {1407#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p3 := 0]; {1411#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:36,744 INFO L273 TraceCheckUtils]: 10: Hoare triple {1411#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p4 := 0]; {1415#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:36,745 INFO L273 TraceCheckUtils]: 11: Hoare triple {1415#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p5 := 0]; {1419#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-05-15 10:30:36,747 INFO L273 TraceCheckUtils]: 12: Hoare triple {1419#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} #memory_int := #memory_int[main_p6 := 0]; {1423#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} is VALID [2019-05-15 10:30:36,749 INFO L273 TraceCheckUtils]: 13: Hoare triple {1423#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4)))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {1427#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} is VALID [2019-05-15 10:30:36,750 INFO L273 TraceCheckUtils]: 14: Hoare triple {1427#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))) (exists ((ULTIMATE.start_main_p4 Int)) (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0)))} assume !(#memory_int[main_p1] >= 0); {1372#false} is VALID [2019-05-15 10:30:36,752 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:30:36,752 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:30:36,753 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2019-05-15 10:30:36,753 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 15 [2019-05-15 10:30:36,753 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:30:36,753 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states. [2019-05-15 10:30:36,777 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:36,778 INFO L454 AbstractCegarLoop]: Interpolant automaton has 15 states [2019-05-15 10:30:36,778 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2019-05-15 10:30:36,778 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=169, Unknown=0, NotChecked=0, Total=210 [2019-05-15 10:30:36,778 INFO L87 Difference]: Start difference. First operand 35 states and 77 transitions. Second operand 15 states. [2019-05-15 10:30:37,888 WARN L188 SmtUtils]: Spent 170.00 ms on a formula simplification. DAG size of input: 51 DAG size of output: 49 [2019-05-15 10:30:39,520 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:39,521 INFO L93 Difference]: Finished difference Result 79 states and 139 transitions. [2019-05-15 10:30:39,521 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2019-05-15 10:30:39,521 INFO L78 Accepts]: Start accepts. Automaton has 15 states. Word has length 15 [2019-05-15 10:30:39,521 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:30:39,521 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2019-05-15 10:30:39,523 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 108 transitions. [2019-05-15 10:30:39,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2019-05-15 10:30:39,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 108 transitions. [2019-05-15 10:30:39,525 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 108 transitions. [2019-05-15 10:30:39,773 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:39,775 INFO L225 Difference]: With dead ends: 79 [2019-05-15 10:30:39,775 INFO L226 Difference]: Without dead ends: 78 [2019-05-15 10:30:39,776 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=121, Invalid=299, Unknown=0, NotChecked=0, Total=420 [2019-05-15 10:30:39,776 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2019-05-15 10:30:39,779 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 38. [2019-05-15 10:30:39,780 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:30:39,780 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand 38 states. [2019-05-15 10:30:39,780 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand 38 states. [2019-05-15 10:30:39,780 INFO L87 Difference]: Start difference. First operand 78 states. Second operand 38 states. [2019-05-15 10:30:39,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:39,783 INFO L93 Difference]: Finished difference Result 78 states and 138 transitions. [2019-05-15 10:30:39,783 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 138 transitions. [2019-05-15 10:30:39,784 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:39,784 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:39,784 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand 78 states. [2019-05-15 10:30:39,784 INFO L87 Difference]: Start difference. First operand 38 states. Second operand 78 states. [2019-05-15 10:30:39,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:39,787 INFO L93 Difference]: Finished difference Result 78 states and 138 transitions. [2019-05-15 10:30:39,787 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 138 transitions. [2019-05-15 10:30:39,788 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:39,788 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:39,788 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:30:39,788 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:30:39,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 38 states. [2019-05-15 10:30:39,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 87 transitions. [2019-05-15 10:30:39,790 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 87 transitions. Word has length 15 [2019-05-15 10:30:39,790 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:30:39,790 INFO L475 AbstractCegarLoop]: Abstraction has 38 states and 87 transitions. [2019-05-15 10:30:39,790 INFO L476 AbstractCegarLoop]: Interpolant automaton has 15 states. [2019-05-15 10:30:39,790 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 87 transitions. [2019-05-15 10:30:39,791 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2019-05-15 10:30:39,791 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:30:39,791 INFO L399 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:30:39,791 INFO L418 AbstractCegarLoop]: === Iteration 7 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:30:39,791 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:30:39,792 INFO L82 PathProgramCache]: Analyzing trace with hash 896688482, now seen corresponding path program 2 times [2019-05-15 10:30:39,792 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:30:39,807 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:39,809 INFO L256 TraceCheckSpWp]: Trace formula consists of 30 conjuncts, 11 conjunts are in the unsatisfiable core [2019-05-15 10:30:39,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:39,823 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:30:39,835 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:39,835 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:39,841 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:39,841 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:39,842 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:30:39,844 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:39,845 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_36|]. (= |#valid| (store |v_#valid_36| ULTIMATE.start_main_p1 1)) [2019-05-15 10:30:39,845 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:30:39,872 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:39,872 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:30:39,876 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:39,881 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:39,882 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:39,882 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:4 [2019-05-15 10:30:39,890 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:39,890 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_37|]. (and (= 1 (select |v_#valid_37| ULTIMATE.start_main_p1)) (<= (select |v_#valid_37| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:30:39,890 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) [2019-05-15 10:30:39,927 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:39,927 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:39,937 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:39,937 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:39,937 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:10 [2019-05-15 10:30:39,939 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:39,939 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_76|]. (and (= (store |v_#memory_int_76| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:30:39,939 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:30:39,971 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:30:39,973 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:39,982 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:39,985 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:39,985 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:16, output treesize:15 [2019-05-15 10:30:39,988 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:39,988 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_77|, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_77| ULTIMATE.start_main_p2 0)) (= (select |v_#memory_int_77| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:30:39,988 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:30:40,058 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:40,058 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:40,059 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:40,099 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:40,101 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:40,101 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:40,103 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:40,103 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_78|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (store |v_#memory_int_78| ULTIMATE.start_main_p3 0) |#memory_int|) (= (select |v_#memory_int_78| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_78| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:30:40,103 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-05-15 10:30:40,173 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:40,173 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:40,174 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:40,218 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:40,220 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:40,220 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:40,223 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:40,223 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_79|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (= |#memory_int| (store |v_#memory_int_79| ULTIMATE.start_main_p4 0)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_79| ULTIMATE.start_main_p2) 0) (= (select |v_#memory_int_79| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:30:40,223 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-05-15 10:30:40,284 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:40,284 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:40,285 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:40,312 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:40,315 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:40,315 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:40,318 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:40,319 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_80|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= (store |v_#memory_int_80| ULTIMATE.start_main_p5 0) |#memory_int|) (= 0 (select |v_#memory_int_80| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_80| ULTIMATE.start_main_p1))) [2019-05-15 10:30:40,319 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:30:40,359 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:40,360 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:40,361 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:40,396 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:30:40,398 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:40,398 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:30:40,401 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:40,401 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_81|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_81| ULTIMATE.start_main_p1) 0) (= 0 (select |v_#memory_int_81| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_81| ULTIMATE.start_main_p6 0))) [2019-05-15 10:30:40,401 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:30:40,423 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 19 [2019-05-15 10:30:40,425 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:40,435 INFO L567 ElimStorePlain]: treesize reduction 4, result has 73.3 percent of original size [2019-05-15 10:30:40,436 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:40,436 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:25, output treesize:11 [2019-05-15 10:30:40,439 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:40,439 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_82|, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_82| ULTIMATE.start_main_p1))) (and (= 0 (select |v_#memory_int_82| ULTIMATE.start_main_p2)) (= 0 .cse0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_82| ULTIMATE.start_main_p1 (+ .cse0 1)) |#memory_int|))) [2019-05-15 10:30:40,440 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:30:40,867 WARN L188 SmtUtils]: Spent 258.00 ms on a formula simplification that was a NOOP. DAG size: 17 [2019-05-15 10:30:40,868 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:40,868 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 21 treesize of output 43 [2019-05-15 10:30:40,894 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:41,015 WARN L188 SmtUtils]: Spent 120.00 ms on a formula simplification. DAG size of input: 15 DAG size of output: 10 [2019-05-15 10:30:41,016 INFO L567 ElimStorePlain]: treesize reduction 18, result has 37.9 percent of original size [2019-05-15 10:30:41,016 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:41,017 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:21, output treesize:11 [2019-05-15 10:30:41,026 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:41,026 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_83|, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_83| ULTIMATE.start_main_p1))) (and (= 1 .cse0) (= |#memory_int| (store |v_#memory_int_83| ULTIMATE.start_main_p1 (+ .cse0 1))) (= 0 (select |v_#memory_int_83| ULTIMATE.start_main_p2)))) [2019-05-15 10:30:41,026 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 2)) [2019-05-15 10:30:41,040 INFO L273 TraceCheckUtils]: 0: Hoare triple {1715#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {1715#true} is VALID [2019-05-15 10:30:41,041 INFO L273 TraceCheckUtils]: 1: Hoare triple {1715#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {1723#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:30:41,042 INFO L273 TraceCheckUtils]: 2: Hoare triple {1723#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {1727#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:41,042 INFO L273 TraceCheckUtils]: 3: Hoare triple {1727#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {1727#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:41,043 INFO L273 TraceCheckUtils]: 4: Hoare triple {1727#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {1727#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:41,044 INFO L273 TraceCheckUtils]: 5: Hoare triple {1727#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {1727#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:41,045 INFO L273 TraceCheckUtils]: 6: Hoare triple {1727#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {1727#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:41,046 INFO L273 TraceCheckUtils]: 7: Hoare triple {1727#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p1 := 0]; {1743#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:30:41,047 INFO L273 TraceCheckUtils]: 8: Hoare triple {1743#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := 0]; {1747#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:41,048 INFO L273 TraceCheckUtils]: 9: Hoare triple {1747#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p3 := 0]; {1747#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:41,050 INFO L273 TraceCheckUtils]: 10: Hoare triple {1747#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p4 := 0]; {1747#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:41,051 INFO L273 TraceCheckUtils]: 11: Hoare triple {1747#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p5 := 0]; {1747#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:41,052 INFO L273 TraceCheckUtils]: 12: Hoare triple {1747#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p6 := 0]; {1747#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:30:41,053 INFO L273 TraceCheckUtils]: 13: Hoare triple {1747#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {1763#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))))} is VALID [2019-05-15 10:30:41,054 INFO L273 TraceCheckUtils]: 14: Hoare triple {1763#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {1767#(and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) (= (select |#memory_int| ULTIMATE.start_main_p1) 2))} is VALID [2019-05-15 10:30:41,054 INFO L273 TraceCheckUtils]: 15: Hoare triple {1767#(and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) (= (select |#memory_int| ULTIMATE.start_main_p1) 2))} assume !(#memory_int[main_p1] >= 0); {1716#false} is VALID [2019-05-15 10:30:41,056 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:30:41,056 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:30:41,056 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2019-05-15 10:30:41,057 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 16 [2019-05-15 10:30:41,057 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:30:41,057 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-05-15 10:30:41,077 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:41,077 INFO L454 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-05-15 10:30:41,078 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-05-15 10:30:41,078 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2019-05-15 10:30:41,078 INFO L87 Difference]: Start difference. First operand 38 states and 87 transitions. Second operand 8 states. [2019-05-15 10:30:42,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:42,380 INFO L93 Difference]: Finished difference Result 71 states and 128 transitions. [2019-05-15 10:30:42,381 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2019-05-15 10:30:42,381 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 16 [2019-05-15 10:30:42,381 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:30:42,381 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-05-15 10:30:42,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 88 transitions. [2019-05-15 10:30:42,382 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-05-15 10:30:42,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 88 transitions. [2019-05-15 10:30:42,384 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 88 transitions. [2019-05-15 10:30:42,512 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:42,513 INFO L225 Difference]: With dead ends: 71 [2019-05-15 10:30:42,514 INFO L226 Difference]: Without dead ends: 71 [2019-05-15 10:30:42,514 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 5 SyntacticMatches, 4 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=44, Invalid=112, Unknown=0, NotChecked=0, Total=156 [2019-05-15 10:30:42,515 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2019-05-15 10:30:42,518 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 39. [2019-05-15 10:30:42,518 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:30:42,518 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand 39 states. [2019-05-15 10:30:42,518 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand 39 states. [2019-05-15 10:30:42,519 INFO L87 Difference]: Start difference. First operand 71 states. Second operand 39 states. [2019-05-15 10:30:42,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:42,521 INFO L93 Difference]: Finished difference Result 71 states and 128 transitions. [2019-05-15 10:30:42,522 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 128 transitions. [2019-05-15 10:30:42,522 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:42,522 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:42,522 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 71 states. [2019-05-15 10:30:42,522 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 71 states. [2019-05-15 10:30:42,525 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:42,525 INFO L93 Difference]: Finished difference Result 71 states and 128 transitions. [2019-05-15 10:30:42,525 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 128 transitions. [2019-05-15 10:30:42,525 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:42,526 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:42,526 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:30:42,526 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:30:42,526 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 39 states. [2019-05-15 10:30:42,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 94 transitions. [2019-05-15 10:30:42,528 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 94 transitions. Word has length 16 [2019-05-15 10:30:42,528 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:30:42,528 INFO L475 AbstractCegarLoop]: Abstraction has 39 states and 94 transitions. [2019-05-15 10:30:42,528 INFO L476 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-05-15 10:30:42,528 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 94 transitions. [2019-05-15 10:30:42,529 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2019-05-15 10:30:42,529 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:30:42,529 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:30:42,529 INFO L418 AbstractCegarLoop]: === Iteration 8 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:30:42,530 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:30:42,530 INFO L82 PathProgramCache]: Analyzing trace with hash 896688978, now seen corresponding path program 1 times [2019-05-15 10:30:42,530 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:30:42,547 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:42,549 INFO L256 TraceCheckSpWp]: Trace formula consists of 30 conjuncts, 13 conjunts are in the unsatisfiable core [2019-05-15 10:30:42,565 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:42,565 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:30:42,578 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:42,578 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,579 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:42,580 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,580 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:30:42,582 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:42,582 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_38|]. (= (store |v_#valid_38| ULTIMATE.start_main_p1 1) |#valid|) [2019-05-15 10:30:42,583 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:30:42,609 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:42,609 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:30:42,620 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,622 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:42,623 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,623 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:4 [2019-05-15 10:30:42,624 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:42,624 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_39|]. (and (<= (select |v_#valid_39| ULTIMATE.start_main_p2) 0) (= 1 (select |v_#valid_39| ULTIMATE.start_main_p1))) [2019-05-15 10:30:42,625 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) [2019-05-15 10:30:42,642 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:42,642 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,651 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:42,652 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,652 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:10 [2019-05-15 10:30:42,654 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:42,655 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_40|]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#valid| (store |v_#valid_40| ULTIMATE.start_main_p5 1))) [2019-05-15 10:30:42,655 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |#valid| ULTIMATE.start_main_p5))) [2019-05-15 10:30:42,681 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:42,682 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:30:42,720 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,723 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:42,724 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,724 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:15, output treesize:9 [2019-05-15 10:30:42,726 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:42,726 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_41|]. (and (<= (select |v_#valid_41| ULTIMATE.start_main_p6) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#valid_41| ULTIMATE.start_main_p5) 1)) [2019-05-15 10:30:42,726 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:42,747 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:42,748 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,755 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:42,755 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,756 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:15, output treesize:14 [2019-05-15 10:30:42,758 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:42,758 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_84|]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_84| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:42,758 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:42,869 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:30:42,870 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,878 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:42,880 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:42,880 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:20, output treesize:19 [2019-05-15 10:30:42,882 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:42,882 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_85|, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_85| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_85| ULTIMATE.start_main_p2 0) |#memory_int|) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:42,882 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:42,938 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:42,939 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:42,939 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:42,969 INFO L567 ElimStorePlain]: treesize reduction 28, result has 46.2 percent of original size [2019-05-15 10:30:42,971 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:42,971 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:25, output treesize:24 [2019-05-15 10:30:42,973 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:42,973 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_86|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (store |v_#memory_int_86| ULTIMATE.start_main_p3 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_86| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= (select |v_#memory_int_86| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:30:42,974 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:43,032 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:43,033 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:43,034 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:43,066 INFO L567 ElimStorePlain]: treesize reduction 28, result has 46.2 percent of original size [2019-05-15 10:30:43,069 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:43,069 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:25, output treesize:24 [2019-05-15 10:30:43,071 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:43,071 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_87|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (= (store |v_#memory_int_87| ULTIMATE.start_main_p4 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_87| ULTIMATE.start_main_p2) 0) (= 0 (select |v_#memory_int_87| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:43,072 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:43,122 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:43,122 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:30:43,123 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:43,156 INFO L567 ElimStorePlain]: treesize reduction 28, result has 46.2 percent of original size [2019-05-15 10:30:43,170 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:43,170 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:25, output treesize:24 [2019-05-15 10:30:43,251 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:43,252 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 22 treesize of output 74 [2019-05-15 10:30:43,253 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:43,290 INFO L567 ElimStorePlain]: treesize reduction 28, result has 50.9 percent of original size [2019-05-15 10:30:43,292 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:43,292 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:30, output treesize:29 [2019-05-15 10:30:43,295 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:43,295 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_89|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_89| ULTIMATE.start_main_p5) 0) (= (select |v_#memory_int_89| ULTIMATE.start_main_p2) 0) (= |#memory_int| (store |v_#memory_int_89| ULTIMATE.start_main_p6 0)) (= (select |v_#memory_int_89| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:43,296 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:43,372 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:43,373 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 26 treesize of output 75 [2019-05-15 10:30:43,374 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:43,408 INFO L567 ElimStorePlain]: treesize reduction 20, result has 58.3 percent of original size [2019-05-15 10:30:43,410 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:30:43,410 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:30, output treesize:28 [2019-05-15 10:30:43,417 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:43,417 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_90|, ULTIMATE.start_main_p6]. (let ((.cse0 (select |v_#memory_int_90| ULTIMATE.start_main_p1))) (and (= (store |v_#memory_int_90| ULTIMATE.start_main_p1 (+ .cse0 1)) |#memory_int|) (= 0 (select |v_#memory_int_90| ULTIMATE.start_main_p5)) (= 0 (select |v_#memory_int_90| ULTIMATE.start_main_p6)) (= .cse0 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-05-15 10:30:43,417 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6]. (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:30:43,475 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:30:43,476 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 23 [2019-05-15 10:30:43,479 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:43,495 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:30:43,497 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 25 treesize of output 23 [2019-05-15 10:30:43,499 INFO L496 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:43,530 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:43,531 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 30 treesize of output 63 [2019-05-15 10:30:43,534 INFO L496 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:43,570 INFO L567 ElimStorePlain]: treesize reduction 52, result has 34.2 percent of original size [2019-05-15 10:30:43,577 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 2 xjuncts. [2019-05-15 10:30:43,577 INFO L221 ElimStorePlain]: Needed 4 recursive calls to eliminate 3 variables, input treesize:81, output treesize:27 [2019-05-15 10:30:57,774 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:57,774 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_91|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6]. (let ((.cse2 (select |v_#memory_int_91| ULTIMATE.start_main_p1)) (.cse5 (select |v_#memory_int_91| ULTIMATE.start_main_p5))) (let ((.cse3 (= (store |v_#memory_int_91| ULTIMATE.start_main_p5 (+ .cse5 1)) |#memory_int|)) (.cse0 (= .cse2 1)) (.cse4 (= .cse5 0)) (.cse1 (= (select |v_#memory_int_91| ULTIMATE.start_main_p6) 0))) (or (and .cse0 (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) .cse1 (= (store |v_#memory_int_91| ULTIMATE.start_main_p1 (+ .cse2 1)) |#memory_int|)) (and .cse3 (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) .cse0 .cse4) (and .cse3 .cse0 .cse4 .cse1 (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))) [2019-05-15 10:30:57,774 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6, ULTIMATE.start_main_p5]. (let ((.cse0 (select |#memory_int| ULTIMATE.start_main_p1))) (or (and (= .cse0 2) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (and (= .cse0 1) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))))) [2019-05-15 10:30:57,991 INFO L273 TraceCheckUtils]: 0: Hoare triple {2032#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {2032#true} is VALID [2019-05-15 10:30:57,992 INFO L273 TraceCheckUtils]: 1: Hoare triple {2032#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {2040#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:30:57,998 INFO L273 TraceCheckUtils]: 2: Hoare triple {2040#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {2044#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:57,998 INFO L273 TraceCheckUtils]: 3: Hoare triple {2044#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {2044#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:57,999 INFO L273 TraceCheckUtils]: 4: Hoare triple {2044#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {2044#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:30:57,999 INFO L273 TraceCheckUtils]: 5: Hoare triple {2044#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {2054#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:58,000 INFO L273 TraceCheckUtils]: 6: Hoare triple {2054#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {2058#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:58,001 INFO L273 TraceCheckUtils]: 7: Hoare triple {2058#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p1 := 0]; {2062#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:58,001 INFO L273 TraceCheckUtils]: 8: Hoare triple {2062#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p2 := 0]; {2066#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:58,002 INFO L273 TraceCheckUtils]: 9: Hoare triple {2066#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p3 := 0]; {2066#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:58,003 INFO L273 TraceCheckUtils]: 10: Hoare triple {2066#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p4 := 0]; {2066#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:58,005 INFO L273 TraceCheckUtils]: 11: Hoare triple {2066#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p5 := 0]; {2076#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:30:58,006 INFO L273 TraceCheckUtils]: 12: Hoare triple {2076#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p6 := 0]; {2080#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int)) (and (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} is VALID [2019-05-15 10:30:58,008 INFO L273 TraceCheckUtils]: 13: Hoare triple {2080#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int)) (and (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {2084#(and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p6 Int)) (and (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} is VALID [2019-05-15 10:30:58,010 INFO L273 TraceCheckUtils]: 14: Hoare triple {2084#(and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p6 Int)) (and (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {2088#(or (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p5 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))))) (and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (= (select |#memory_int| ULTIMATE.start_main_p1) 2)))} is VALID [2019-05-15 10:30:58,011 INFO L273 TraceCheckUtils]: 15: Hoare triple {2088#(or (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p5 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))))) (and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (= (select |#memory_int| ULTIMATE.start_main_p1) 2)))} assume !(#memory_int[main_p1] >= 0); {2033#false} is VALID [2019-05-15 10:30:58,012 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:30:58,013 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:30:58,013 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2019-05-15 10:30:58,013 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 16 [2019-05-15 10:30:58,013 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:30:58,014 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2019-05-15 10:30:58,034 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:58,035 INFO L454 AbstractCegarLoop]: Interpolant automaton has 12 states [2019-05-15 10:30:58,035 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2019-05-15 10:30:58,035 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2019-05-15 10:30:58,035 INFO L87 Difference]: Start difference. First operand 39 states and 94 transitions. Second operand 12 states. [2019-05-15 10:30:59,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:59,743 INFO L93 Difference]: Finished difference Result 71 states and 134 transitions. [2019-05-15 10:30:59,743 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2019-05-15 10:30:59,743 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 16 [2019-05-15 10:30:59,744 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:30:59,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2019-05-15 10:30:59,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 88 transitions. [2019-05-15 10:30:59,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2019-05-15 10:30:59,746 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 88 transitions. [2019-05-15 10:30:59,746 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 88 transitions. [2019-05-15 10:30:59,932 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:30:59,934 INFO L225 Difference]: With dead ends: 71 [2019-05-15 10:30:59,934 INFO L226 Difference]: Without dead ends: 71 [2019-05-15 10:30:59,935 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 3 SyntacticMatches, 2 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=102, Invalid=278, Unknown=0, NotChecked=0, Total=380 [2019-05-15 10:30:59,935 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2019-05-15 10:30:59,938 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 43. [2019-05-15 10:30:59,938 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:30:59,938 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand 43 states. [2019-05-15 10:30:59,938 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand 43 states. [2019-05-15 10:30:59,938 INFO L87 Difference]: Start difference. First operand 71 states. Second operand 43 states. [2019-05-15 10:30:59,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:59,941 INFO L93 Difference]: Finished difference Result 71 states and 134 transitions. [2019-05-15 10:30:59,941 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 134 transitions. [2019-05-15 10:30:59,942 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:59,942 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:59,942 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand 71 states. [2019-05-15 10:30:59,942 INFO L87 Difference]: Start difference. First operand 43 states. Second operand 71 states. [2019-05-15 10:30:59,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:30:59,945 INFO L93 Difference]: Finished difference Result 71 states and 134 transitions. [2019-05-15 10:30:59,945 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 134 transitions. [2019-05-15 10:30:59,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:30:59,946 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:30:59,946 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:30:59,946 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:30:59,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 43 states. [2019-05-15 10:30:59,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 101 transitions. [2019-05-15 10:30:59,948 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 101 transitions. Word has length 16 [2019-05-15 10:30:59,948 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:30:59,948 INFO L475 AbstractCegarLoop]: Abstraction has 43 states and 101 transitions. [2019-05-15 10:30:59,948 INFO L476 AbstractCegarLoop]: Interpolant automaton has 12 states. [2019-05-15 10:30:59,948 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 101 transitions. [2019-05-15 10:30:59,949 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2019-05-15 10:30:59,949 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:30:59,949 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:30:59,949 INFO L418 AbstractCegarLoop]: === Iteration 9 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:30:59,949 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:30:59,950 INFO L82 PathProgramCache]: Analyzing trace with hash 896689040, now seen corresponding path program 1 times [2019-05-15 10:30:59,951 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:30:59,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:59,968 INFO L256 TraceCheckSpWp]: Trace formula consists of 30 conjuncts, 11 conjunts are in the unsatisfiable core [2019-05-15 10:30:59,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:30:59,978 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:30:59,993 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:30:59,994 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:30:59,996 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:30:59,996 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:30:59,996 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:30:59,998 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:30:59,998 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_42|]. (= |#valid| (store |v_#valid_42| ULTIMATE.start_main_p1 1)) [2019-05-15 10:30:59,998 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:31:00,026 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:00,026 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:31:00,028 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,031 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:00,031 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,031 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:4 [2019-05-15 10:31:00,032 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:00,033 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_43|]. (and (<= (select |v_#valid_43| ULTIMATE.start_main_p2) 0) (= (select |v_#valid_43| ULTIMATE.start_main_p1) 1)) [2019-05-15 10:31:00,033 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) [2019-05-15 10:31:00,050 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:31:00,051 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,055 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:00,056 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,056 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:10 [2019-05-15 10:31:00,058 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:00,059 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_92|]. (and (= (store |v_#memory_int_92| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:31:00,059 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:31:00,079 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:31:00,080 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,087 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:00,089 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:00,089 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:16, output treesize:15 [2019-05-15 10:31:00,092 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:00,092 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_93|, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_93| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_93| ULTIMATE.start_main_p2 0) |#memory_int|)) [2019-05-15 10:31:00,092 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:31:00,138 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:00,138 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:31:00,139 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,166 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:31:00,168 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:00,168 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:31:00,172 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:00,172 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_94|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_94| ULTIMATE.start_main_p1) 0) (= |#memory_int| (store |v_#memory_int_94| ULTIMATE.start_main_p3 0)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_94| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:31:00,172 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-05-15 10:31:00,211 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:00,211 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:31:00,212 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,238 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:31:00,240 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:00,241 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:31:00,243 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:00,243 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_95|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (= 0 (select |v_#memory_int_95| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_95| ULTIMATE.start_main_p4 0)) (= 0 (select |v_#memory_int_95| ULTIMATE.start_main_p1))) [2019-05-15 10:31:00,243 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-05-15 10:31:00,293 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:00,293 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:31:00,294 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,321 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:31:00,323 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:00,323 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:21, output treesize:20 [2019-05-15 10:31:00,325 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:00,325 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_96|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= 0 (select |v_#memory_int_96| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_96| ULTIMATE.start_main_p2)) (= |#memory_int| (store |v_#memory_int_96| ULTIMATE.start_main_p5 0))) [2019-05-15 10:31:00,325 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:31:00,367 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:00,368 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:31:00,368 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,408 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:31:00,412 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:00,412 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:21, output treesize:20 [2019-05-15 10:31:00,561 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:00,561 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 26 treesize of output 59 [2019-05-15 10:31:00,563 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,623 INFO L567 ElimStorePlain]: treesize reduction 14, result has 58.8 percent of original size [2019-05-15 10:31:00,624 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:00,624 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:30, output treesize:20 [2019-05-15 10:31:00,627 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:00,627 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_98|, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_98| ULTIMATE.start_main_p1))) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= .cse0 0) (= |#memory_int| (store |v_#memory_int_98| ULTIMATE.start_main_p1 (+ .cse0 1))) (= 0 (select |v_#memory_int_98| ULTIMATE.start_main_p6)) (= 0 (select |v_#memory_int_98| ULTIMATE.start_main_p2)))) [2019-05-15 10:31:00,628 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:31:00,701 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:31:00,724 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:00,724 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 21 treesize of output 43 [2019-05-15 10:31:00,726 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,842 WARN L188 SmtUtils]: Spent 110.00 ms on a formula simplification. DAG size of input: 32 DAG size of output: 28 [2019-05-15 10:31:00,843 INFO L341 Elim1Store]: treesize reduction 8, result has 88.1 percent of original size [2019-05-15 10:31:00,843 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 26 treesize of output 75 [2019-05-15 10:31:00,862 INFO L496 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:00,914 INFO L567 ElimStorePlain]: treesize reduction 42, result has 47.5 percent of original size [2019-05-15 10:31:00,917 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 2 xjuncts. [2019-05-15 10:31:00,917 INFO L221 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:48, output treesize:38 [2019-05-15 10:31:14,142 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:14,143 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_99|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2]. (let ((.cse2 (select |v_#memory_int_99| ULTIMATE.start_main_p1))) (let ((.cse0 (= (select |v_#memory_int_99| ULTIMATE.start_main_p2) 0)) (.cse1 (= 1 .cse2))) (or (and .cse0 .cse1 (= |#memory_int| (store |v_#memory_int_99| ULTIMATE.start_main_p1 (+ .cse2 (- 1))))) (let ((.cse3 (select |v_#memory_int_99| ULTIMATE.start_main_p6))) (and (= 0 .cse3) .cse0 .cse1 (= |#memory_int| (store |v_#memory_int_99| ULTIMATE.start_main_p6 (+ .cse3 (- 1))))))))) [2019-05-15 10:31:14,143 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6, v_prenex_1]. (let ((.cse0 (select |#memory_int| ULTIMATE.start_main_p1))) (or (and (= .cse0 1) (or (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))) (and (= .cse0 0) (not (= v_prenex_1 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| v_prenex_1))))) [2019-05-15 10:31:14,467 INFO L273 TraceCheckUtils]: 0: Hoare triple {2363#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {2363#true} is VALID [2019-05-15 10:31:14,484 INFO L273 TraceCheckUtils]: 1: Hoare triple {2363#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {2371#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:31:14,485 INFO L273 TraceCheckUtils]: 2: Hoare triple {2371#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {2375#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:14,485 INFO L273 TraceCheckUtils]: 3: Hoare triple {2375#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {2375#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:14,485 INFO L273 TraceCheckUtils]: 4: Hoare triple {2375#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {2375#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:14,486 INFO L273 TraceCheckUtils]: 5: Hoare triple {2375#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {2375#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:14,487 INFO L273 TraceCheckUtils]: 6: Hoare triple {2375#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {2375#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:14,489 INFO L273 TraceCheckUtils]: 7: Hoare triple {2375#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p1 := 0]; {2391#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:31:14,490 INFO L273 TraceCheckUtils]: 8: Hoare triple {2391#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := 0]; {2395#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:31:14,491 INFO L273 TraceCheckUtils]: 9: Hoare triple {2395#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p3 := 0]; {2395#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:31:14,491 INFO L273 TraceCheckUtils]: 10: Hoare triple {2395#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p4 := 0]; {2395#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:31:14,492 INFO L273 TraceCheckUtils]: 11: Hoare triple {2395#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p5 := 0]; {2395#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:31:14,493 INFO L273 TraceCheckUtils]: 12: Hoare triple {2395#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p6 := 0]; {2408#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))} is VALID [2019-05-15 10:31:14,494 INFO L273 TraceCheckUtils]: 13: Hoare triple {2408#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {2412#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))))} is VALID [2019-05-15 10:31:14,496 INFO L273 TraceCheckUtils]: 14: Hoare triple {2412#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))))} #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; {2416#(or (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int)) (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))))) (and (exists ((v_prenex_1 Int)) (and (not (= v_prenex_1 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| v_prenex_1)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0)))} is VALID [2019-05-15 10:31:14,497 INFO L273 TraceCheckUtils]: 15: Hoare triple {2416#(or (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p6 Int) (ULTIMATE.start_main_p2 Int)) (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))))) (and (exists ((v_prenex_1 Int)) (and (not (= v_prenex_1 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| v_prenex_1)))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0)))} assume !(#memory_int[main_p1] >= 0); {2364#false} is VALID [2019-05-15 10:31:14,499 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:31:14,499 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:31:14,499 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2019-05-15 10:31:14,500 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 16 [2019-05-15 10:31:14,500 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:31:14,500 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2019-05-15 10:31:14,522 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:31:14,522 INFO L454 AbstractCegarLoop]: Interpolant automaton has 9 states [2019-05-15 10:31:14,523 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2019-05-15 10:31:14,523 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2019-05-15 10:31:14,523 INFO L87 Difference]: Start difference. First operand 43 states and 101 transitions. Second operand 9 states. [2019-05-15 10:31:15,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:31:15,508 INFO L93 Difference]: Finished difference Result 70 states and 127 transitions. [2019-05-15 10:31:15,508 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2019-05-15 10:31:15,508 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 16 [2019-05-15 10:31:15,509 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:31:15,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2019-05-15 10:31:15,510 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 87 transitions. [2019-05-15 10:31:15,510 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2019-05-15 10:31:15,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 87 transitions. [2019-05-15 10:31:15,511 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 87 transitions. [2019-05-15 10:31:15,755 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:31:15,756 INFO L225 Difference]: With dead ends: 70 [2019-05-15 10:31:15,757 INFO L226 Difference]: Without dead ends: 70 [2019-05-15 10:31:15,757 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 5 SyntacticMatches, 3 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=63, Invalid=147, Unknown=0, NotChecked=0, Total=210 [2019-05-15 10:31:15,758 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2019-05-15 10:31:15,761 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 43. [2019-05-15 10:31:15,762 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:31:15,762 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand 43 states. [2019-05-15 10:31:15,762 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand 43 states. [2019-05-15 10:31:15,762 INFO L87 Difference]: Start difference. First operand 70 states. Second operand 43 states. [2019-05-15 10:31:15,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:31:15,768 INFO L93 Difference]: Finished difference Result 70 states and 127 transitions. [2019-05-15 10:31:15,768 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 127 transitions. [2019-05-15 10:31:15,768 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:31:15,768 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:31:15,768 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand 70 states. [2019-05-15 10:31:15,769 INFO L87 Difference]: Start difference. First operand 43 states. Second operand 70 states. [2019-05-15 10:31:15,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:31:15,770 INFO L93 Difference]: Finished difference Result 70 states and 127 transitions. [2019-05-15 10:31:15,771 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 127 transitions. [2019-05-15 10:31:15,771 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:31:15,771 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:31:15,771 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:31:15,771 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:31:15,771 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 43 states. [2019-05-15 10:31:15,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 101 transitions. [2019-05-15 10:31:15,772 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 101 transitions. Word has length 16 [2019-05-15 10:31:15,773 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:31:15,773 INFO L475 AbstractCegarLoop]: Abstraction has 43 states and 101 transitions. [2019-05-15 10:31:15,773 INFO L476 AbstractCegarLoop]: Interpolant automaton has 9 states. [2019-05-15 10:31:15,773 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 101 transitions. [2019-05-15 10:31:15,773 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2019-05-15 10:31:15,773 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:31:15,774 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:31:15,774 INFO L418 AbstractCegarLoop]: === Iteration 10 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:31:15,774 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:31:15,774 INFO L82 PathProgramCache]: Analyzing trace with hash 896688606, now seen corresponding path program 1 times [2019-05-15 10:31:15,776 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:31:15,798 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:31:15,803 INFO L256 TraceCheckSpWp]: Trace formula consists of 30 conjuncts, 11 conjunts are in the unsatisfiable core [2019-05-15 10:31:15,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:31:15,824 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:31:15,846 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:31:15,846 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:15,848 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:15,849 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:15,849 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:31:15,851 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:15,851 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_44|]. (= |#valid| (store |v_#valid_44| ULTIMATE.start_main_p1 1)) [2019-05-15 10:31:15,852 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:31:15,869 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:15,869 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:31:15,874 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:15,875 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:15,876 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:15,876 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:4 [2019-05-15 10:31:15,877 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:15,877 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_45|]. (and (= 1 (select |v_#valid_45| ULTIMATE.start_main_p1)) (<= (select |v_#valid_45| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:31:15,878 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) [2019-05-15 10:31:15,902 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:31:15,902 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:15,912 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:15,912 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:15,912 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:10 [2019-05-15 10:31:15,914 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:15,914 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_100|]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_100| ULTIMATE.start_main_p1 0))) [2019-05-15 10:31:15,914 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:31:15,939 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:31:15,940 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:15,952 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:15,952 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:15,952 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:16, output treesize:15 [2019-05-15 10:31:16,037 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:16,038 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:31:16,038 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:16,083 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:31:16,084 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:16,084 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:21, output treesize:20 [2019-05-15 10:31:16,087 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:16,087 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_102|, ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_102| ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_102| ULTIMATE.start_main_p2)) (= (store |v_#memory_int_102| ULTIMATE.start_main_p3 0) |#memory_int|)) [2019-05-15 10:31:16,087 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-05-15 10:31:16,169 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:16,169 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:31:16,170 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:16,344 WARN L188 SmtUtils]: Spent 173.00 ms on a formula simplification. DAG size of input: 22 DAG size of output: 14 [2019-05-15 10:31:16,344 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:31:16,345 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:16,345 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:21, output treesize:20 [2019-05-15 10:31:16,348 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:16,348 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_103|, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_103| ULTIMATE.start_main_p4 0)) (= 0 (select |v_#memory_int_103| ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_103| ULTIMATE.start_main_p2))) [2019-05-15 10:31:16,348 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p4]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-05-15 10:31:16,405 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:16,406 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:31:16,407 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:16,435 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:31:16,436 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:16,436 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:21, output treesize:20 [2019-05-15 10:31:16,441 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:16,442 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_104|, ULTIMATE.start_main_p5]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_104| ULTIMATE.start_main_p5 0)) (= 0 (select |v_#memory_int_104| ULTIMATE.start_main_p1)) (= (select |v_#memory_int_104| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:31:16,442 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:31:16,482 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:16,482 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:31:16,483 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:16,510 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:31:16,511 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:16,511 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:21, output treesize:20 [2019-05-15 10:31:16,514 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:16,514 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_105|, ULTIMATE.start_main_p6]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_105| ULTIMATE.start_main_p1) 0) (= (select |v_#memory_int_105| ULTIMATE.start_main_p2) 0) (= (store |v_#memory_int_105| ULTIMATE.start_main_p6 0) |#memory_int|)) [2019-05-15 10:31:16,514 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:31:16,533 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 19 [2019-05-15 10:31:16,544 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:16,554 INFO L567 ElimStorePlain]: treesize reduction 4, result has 73.3 percent of original size [2019-05-15 10:31:16,555 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:16,555 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:25, output treesize:11 [2019-05-15 10:31:16,564 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:16,565 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_106|]. (let ((.cse0 (select |v_#memory_int_106| ULTIMATE.start_main_p1))) (and (= (store |v_#memory_int_106| ULTIMATE.start_main_p1 (+ .cse0 1)) |#memory_int|) (= (select |v_#memory_int_106| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 .cse0))) [2019-05-15 10:31:16,565 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:31:16,603 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:16,603 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 21 treesize of output 43 [2019-05-15 10:31:16,605 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:16,627 INFO L567 ElimStorePlain]: treesize reduction 18, result has 41.9 percent of original size [2019-05-15 10:31:16,628 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:16,628 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:21, output treesize:13 [2019-05-15 10:31:29,209 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:29,209 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_107|, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_107| ULTIMATE.start_main_p2))) (and (= 1 (select |v_#memory_int_107| ULTIMATE.start_main_p1)) (= (store |v_#memory_int_107| ULTIMATE.start_main_p2 (+ .cse0 (- 1))) |#memory_int|) (= .cse0 0))) [2019-05-15 10:31:29,209 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))) [2019-05-15 10:31:29,515 INFO L273 TraceCheckUtils]: 0: Hoare triple {2684#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {2684#true} is VALID [2019-05-15 10:31:29,516 INFO L273 TraceCheckUtils]: 1: Hoare triple {2684#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {2692#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:31:29,517 INFO L273 TraceCheckUtils]: 2: Hoare triple {2692#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {2696#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:29,518 INFO L273 TraceCheckUtils]: 3: Hoare triple {2696#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {2696#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:29,518 INFO L273 TraceCheckUtils]: 4: Hoare triple {2696#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {2696#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:29,519 INFO L273 TraceCheckUtils]: 5: Hoare triple {2696#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {2696#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:29,520 INFO L273 TraceCheckUtils]: 6: Hoare triple {2696#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {2696#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:29,520 INFO L273 TraceCheckUtils]: 7: Hoare triple {2696#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p1 := 0]; {2712#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:31:29,521 INFO L273 TraceCheckUtils]: 8: Hoare triple {2712#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := 0]; {2716#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-05-15 10:31:29,523 INFO L273 TraceCheckUtils]: 9: Hoare triple {2716#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p3 := 0]; {2716#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-05-15 10:31:29,524 INFO L273 TraceCheckUtils]: 10: Hoare triple {2716#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p4 := 0]; {2716#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-05-15 10:31:29,525 INFO L273 TraceCheckUtils]: 11: Hoare triple {2716#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p5 := 0]; {2716#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-05-15 10:31:29,526 INFO L273 TraceCheckUtils]: 12: Hoare triple {2716#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p6 := 0]; {2716#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-05-15 10:31:29,527 INFO L273 TraceCheckUtils]: 13: Hoare triple {2716#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {2732#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} is VALID [2019-05-15 10:31:29,528 INFO L273 TraceCheckUtils]: 14: Hoare triple {2732#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))} #memory_int := #memory_int[main_p2 := #memory_int[main_p2] - 1]; {2736#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))))} is VALID [2019-05-15 10:31:29,529 INFO L273 TraceCheckUtils]: 15: Hoare triple {2736#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p2) 1))))} assume !(#memory_int[main_p1] >= 0); {2685#false} is VALID [2019-05-15 10:31:29,530 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:31:29,531 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:31:29,531 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2019-05-15 10:31:29,531 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 16 [2019-05-15 10:31:29,532 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:31:29,532 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2019-05-15 10:31:29,550 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:31:29,550 INFO L454 AbstractCegarLoop]: Interpolant automaton has 8 states [2019-05-15 10:31:29,550 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2019-05-15 10:31:29,551 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2019-05-15 10:31:29,551 INFO L87 Difference]: Start difference. First operand 43 states and 101 transitions. Second operand 8 states. [2019-05-15 10:31:30,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:31:30,487 INFO L93 Difference]: Finished difference Result 69 states and 126 transitions. [2019-05-15 10:31:30,487 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2019-05-15 10:31:30,487 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 16 [2019-05-15 10:31:30,487 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:31:30,487 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-05-15 10:31:30,488 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 87 transitions. [2019-05-15 10:31:30,488 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2019-05-15 10:31:30,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 87 transitions. [2019-05-15 10:31:30,489 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 87 transitions. [2019-05-15 10:31:30,603 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:31:30,605 INFO L225 Difference]: With dead ends: 69 [2019-05-15 10:31:30,605 INFO L226 Difference]: Without dead ends: 69 [2019-05-15 10:31:30,605 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 5 SyntacticMatches, 4 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=47, Invalid=109, Unknown=0, NotChecked=0, Total=156 [2019-05-15 10:31:30,606 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2019-05-15 10:31:30,608 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 43. [2019-05-15 10:31:30,608 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:31:30,608 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand 43 states. [2019-05-15 10:31:30,608 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand 43 states. [2019-05-15 10:31:30,608 INFO L87 Difference]: Start difference. First operand 69 states. Second operand 43 states. [2019-05-15 10:31:30,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:31:30,610 INFO L93 Difference]: Finished difference Result 69 states and 126 transitions. [2019-05-15 10:31:30,610 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 126 transitions. [2019-05-15 10:31:30,610 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:31:30,610 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:31:30,611 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand 69 states. [2019-05-15 10:31:30,611 INFO L87 Difference]: Start difference. First operand 43 states. Second operand 69 states. [2019-05-15 10:31:30,612 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:31:30,612 INFO L93 Difference]: Finished difference Result 69 states and 126 transitions. [2019-05-15 10:31:30,613 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 126 transitions. [2019-05-15 10:31:30,613 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:31:30,613 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:31:30,613 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:31:30,613 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:31:30,614 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 43 states. [2019-05-15 10:31:30,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 100 transitions. [2019-05-15 10:31:30,615 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 100 transitions. Word has length 16 [2019-05-15 10:31:30,615 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:31:30,615 INFO L475 AbstractCegarLoop]: Abstraction has 43 states and 100 transitions. [2019-05-15 10:31:30,615 INFO L476 AbstractCegarLoop]: Interpolant automaton has 8 states. [2019-05-15 10:31:30,615 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 100 transitions. [2019-05-15 10:31:30,616 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2019-05-15 10:31:30,616 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:31:30,616 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:31:30,616 INFO L418 AbstractCegarLoop]: === Iteration 11 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:31:30,616 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:31:30,616 INFO L82 PathProgramCache]: Analyzing trace with hash 896688730, now seen corresponding path program 1 times [2019-05-15 10:31:30,617 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:31:30,632 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:31:30,633 INFO L256 TraceCheckSpWp]: Trace formula consists of 30 conjuncts, 11 conjunts are in the unsatisfiable core [2019-05-15 10:31:30,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:31:30,659 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:31:30,667 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:31:30,667 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:30,674 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:30,674 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:30,674 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:31:30,676 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:30,676 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_46|]. (= |#valid| (store |v_#valid_46| ULTIMATE.start_main_p1 1)) [2019-05-15 10:31:30,676 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:31:30,699 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:30,700 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:31:30,701 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:30,703 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:30,703 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:30,703 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:4 [2019-05-15 10:31:30,705 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:30,705 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_47|]. (and (= (select |v_#valid_47| ULTIMATE.start_main_p1) 1) (<= (select |v_#valid_47| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:31:30,706 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) [2019-05-15 10:31:30,722 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:31:30,723 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:30,728 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:30,728 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:30,729 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:10 [2019-05-15 10:31:30,731 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:30,731 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_108|]. (and (= (store |v_#memory_int_108| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:31:30,731 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:31:30,752 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:31:30,756 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:30,761 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:30,778 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:30,778 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:16, output treesize:15 [2019-05-15 10:31:30,780 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:30,780 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_109|, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_109| ULTIMATE.start_main_p2 0) |#memory_int|) (= 0 (select |v_#memory_int_109| ULTIMATE.start_main_p1))) [2019-05-15 10:31:30,781 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:31:30,830 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:30,830 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:31:30,831 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:30,859 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:31:30,861 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:30,861 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:21, output treesize:20 [2019-05-15 10:31:30,939 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:30,940 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 22 treesize of output 88 [2019-05-15 10:31:30,940 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:30,979 INFO L567 ElimStorePlain]: treesize reduction 42, result has 37.3 percent of original size [2019-05-15 10:31:30,981 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:30,982 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:26, output treesize:25 [2019-05-15 10:31:30,985 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:30,986 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_111|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_111| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_111| ULTIMATE.start_main_p4 0) |#memory_int|) (= (select |v_#memory_int_111| ULTIMATE.start_main_p1) 0) (= 0 (select |v_#memory_int_111| ULTIMATE.start_main_p2))) [2019-05-15 10:31:30,986 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-05-15 10:31:31,055 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:31,056 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 22 treesize of output 88 [2019-05-15 10:31:31,056 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:31,094 INFO L567 ElimStorePlain]: treesize reduction 42, result has 37.3 percent of original size [2019-05-15 10:31:31,096 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:31,097 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:26, output treesize:25 [2019-05-15 10:31:31,100 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:31,100 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_112|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_112| ULTIMATE.start_main_p2) 0) (= 0 (select |v_#memory_int_112| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_112| ULTIMATE.start_main_p3) 0) (= |#memory_int| (store |v_#memory_int_112| ULTIMATE.start_main_p5 0))) [2019-05-15 10:31:31,100 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-05-15 10:31:31,222 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:31,222 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 22 treesize of output 88 [2019-05-15 10:31:31,223 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:31,287 INFO L567 ElimStorePlain]: treesize reduction 42, result has 37.3 percent of original size [2019-05-15 10:31:31,289 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:31,289 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:26, output treesize:25 [2019-05-15 10:31:31,299 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:31,299 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_113|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_113| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_113| ULTIMATE.start_main_p3) 0) (= (select |v_#memory_int_113| ULTIMATE.start_main_p2) 0) (= (store |v_#memory_int_113| ULTIMATE.start_main_p6 0) |#memory_int|)) [2019-05-15 10:31:31,299 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:31:31,370 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:31,371 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 26 treesize of output 59 [2019-05-15 10:31:31,372 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:31,409 INFO L567 ElimStorePlain]: treesize reduction 24, result has 45.5 percent of original size [2019-05-15 10:31:31,409 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:31,409 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:30, output treesize:20 [2019-05-15 10:31:31,412 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:31,412 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_114|, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_114| ULTIMATE.start_main_p1))) (and (= .cse0 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_114| ULTIMATE.start_main_p3) 0) (= (select |v_#memory_int_114| ULTIMATE.start_main_p2) 0) (= (store |v_#memory_int_114| ULTIMATE.start_main_p1 (+ .cse0 1)) |#memory_int|))) [2019-05-15 10:31:31,413 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (or (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) [2019-05-15 10:31:31,572 INFO L341 Elim1Store]: treesize reduction 8, result has 88.1 percent of original size [2019-05-15 10:31:31,573 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 26 treesize of output 75 [2019-05-15 10:31:31,575 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:31,596 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:31,597 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 21 treesize of output 43 [2019-05-15 10:31:31,599 INFO L496 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:31,664 INFO L567 ElimStorePlain]: treesize reduction 42, result has 46.2 percent of original size [2019-05-15 10:31:31,666 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 2 xjuncts. [2019-05-15 10:31:31,666 INFO L221 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:48, output treesize:36 [2019-05-15 10:31:44,889 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:44,890 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_115|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (let ((.cse3 (select |v_#memory_int_115| ULTIMATE.start_main_p1))) (let ((.cse1 (= 1 .cse3)) (.cse2 (= (select |v_#memory_int_115| ULTIMATE.start_main_p2) 0))) (or (let ((.cse0 (select |v_#memory_int_115| ULTIMATE.start_main_p3))) (and (= (store |v_#memory_int_115| ULTIMATE.start_main_p3 (+ .cse0 1)) |#memory_int|) .cse1 .cse2 (= .cse0 0))) (and .cse1 (= (store |v_#memory_int_115| ULTIMATE.start_main_p1 (+ .cse3 1)) |#memory_int|) .cse2)))) [2019-05-15 10:31:44,890 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, v_prenex_2, ULTIMATE.start_main_p2]. (let ((.cse0 (select |#memory_int| ULTIMATE.start_main_p1))) (or (and (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= .cse0 2)) (and (= .cse0 1) (= (select |#memory_int| ULTIMATE.start_main_p3) 1) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (or (= ULTIMATE.start_main_p3 v_prenex_2) (= 0 (select |#memory_int| v_prenex_2)))))) [2019-05-15 10:31:45,011 INFO L273 TraceCheckUtils]: 0: Hoare triple {2999#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {2999#true} is VALID [2019-05-15 10:31:45,012 INFO L273 TraceCheckUtils]: 1: Hoare triple {2999#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {3007#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:31:45,013 INFO L273 TraceCheckUtils]: 2: Hoare triple {3007#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {3011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:45,014 INFO L273 TraceCheckUtils]: 3: Hoare triple {3011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {3011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:45,014 INFO L273 TraceCheckUtils]: 4: Hoare triple {3011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {3011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:45,015 INFO L273 TraceCheckUtils]: 5: Hoare triple {3011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {3011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:45,015 INFO L273 TraceCheckUtils]: 6: Hoare triple {3011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {3011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:31:45,016 INFO L273 TraceCheckUtils]: 7: Hoare triple {3011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} #memory_int := #memory_int[main_p1 := 0]; {3027#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:31:45,018 INFO L273 TraceCheckUtils]: 8: Hoare triple {3027#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} #memory_int := #memory_int[main_p2 := 0]; {3031#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} is VALID [2019-05-15 10:31:45,019 INFO L273 TraceCheckUtils]: 9: Hoare triple {3031#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))))} #memory_int := #memory_int[main_p3 := 0]; {3035#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} is VALID [2019-05-15 10:31:45,021 INFO L273 TraceCheckUtils]: 10: Hoare triple {3035#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} #memory_int := #memory_int[main_p4 := 0]; {3035#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} is VALID [2019-05-15 10:31:45,022 INFO L273 TraceCheckUtils]: 11: Hoare triple {3035#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} #memory_int := #memory_int[main_p5 := 0]; {3035#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} is VALID [2019-05-15 10:31:45,024 INFO L273 TraceCheckUtils]: 12: Hoare triple {3035#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} #memory_int := #memory_int[main_p6 := 0]; {3035#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} is VALID [2019-05-15 10:31:45,026 INFO L273 TraceCheckUtils]: 13: Hoare triple {3035#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= (select |#memory_int| ULTIMATE.start_main_p3) 0))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {3048#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (or (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))))} is VALID [2019-05-15 10:31:45,028 INFO L273 TraceCheckUtils]: 14: Hoare triple {3048#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (or (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))))} #memory_int := #memory_int[main_p3 := #memory_int[main_p3] + 1]; {3052#(or (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((v_prenex_2 Int) (ULTIMATE.start_main_p3 Int)) (and (or (= ULTIMATE.start_main_p3 v_prenex_2) (= 0 (select |#memory_int| v_prenex_2))) (= (select |#memory_int| ULTIMATE.start_main_p3) 1) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))))) (and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) (= (select |#memory_int| ULTIMATE.start_main_p1) 2)))} is VALID [2019-05-15 10:31:45,029 INFO L273 TraceCheckUtils]: 15: Hoare triple {3052#(or (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((v_prenex_2 Int) (ULTIMATE.start_main_p3 Int)) (and (or (= ULTIMATE.start_main_p3 v_prenex_2) (= 0 (select |#memory_int| v_prenex_2))) (= (select |#memory_int| ULTIMATE.start_main_p3) 1) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))))) (and (exists ((ULTIMATE.start_main_p2 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2))) (= (select |#memory_int| ULTIMATE.start_main_p1) 2)))} assume !(#memory_int[main_p1] >= 0); {3000#false} is VALID [2019-05-15 10:31:45,031 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:31:45,031 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:31:45,031 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2019-05-15 10:31:45,032 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 16 [2019-05-15 10:31:45,032 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:31:45,032 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2019-05-15 10:31:45,055 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:31:45,056 INFO L454 AbstractCegarLoop]: Interpolant automaton has 9 states [2019-05-15 10:31:45,056 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2019-05-15 10:31:45,056 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2019-05-15 10:31:45,056 INFO L87 Difference]: Start difference. First operand 43 states and 100 transitions. Second operand 9 states. [2019-05-15 10:31:46,242 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:31:46,242 INFO L93 Difference]: Finished difference Result 68 states and 131 transitions. [2019-05-15 10:31:46,242 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2019-05-15 10:31:46,242 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 16 [2019-05-15 10:31:46,242 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:31:46,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2019-05-15 10:31:46,244 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2019-05-15 10:31:46,244 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2019-05-15 10:31:46,244 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 86 transitions. [2019-05-15 10:31:46,245 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 86 transitions. [2019-05-15 10:31:46,424 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:31:46,426 INFO L225 Difference]: With dead ends: 68 [2019-05-15 10:31:46,426 INFO L226 Difference]: Without dead ends: 66 [2019-05-15 10:31:46,427 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 5 SyntacticMatches, 3 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=57, Invalid=153, Unknown=0, NotChecked=0, Total=210 [2019-05-15 10:31:46,427 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2019-05-15 10:31:46,431 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 41. [2019-05-15 10:31:46,431 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:31:46,431 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand 41 states. [2019-05-15 10:31:46,431 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand 41 states. [2019-05-15 10:31:46,432 INFO L87 Difference]: Start difference. First operand 66 states. Second operand 41 states. [2019-05-15 10:31:46,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:31:46,433 INFO L93 Difference]: Finished difference Result 66 states and 129 transitions. [2019-05-15 10:31:46,433 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 129 transitions. [2019-05-15 10:31:46,434 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:31:46,434 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:31:46,434 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand 66 states. [2019-05-15 10:31:46,434 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 66 states. [2019-05-15 10:31:46,435 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:31:46,436 INFO L93 Difference]: Finished difference Result 66 states and 129 transitions. [2019-05-15 10:31:46,436 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 129 transitions. [2019-05-15 10:31:46,436 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:31:46,436 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:31:46,436 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:31:46,437 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:31:46,437 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2019-05-15 10:31:46,438 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 96 transitions. [2019-05-15 10:31:46,438 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 96 transitions. Word has length 16 [2019-05-15 10:31:46,438 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:31:46,438 INFO L475 AbstractCegarLoop]: Abstraction has 41 states and 96 transitions. [2019-05-15 10:31:46,438 INFO L476 AbstractCegarLoop]: Interpolant automaton has 9 states. [2019-05-15 10:31:46,438 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 96 transitions. [2019-05-15 10:31:46,439 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2019-05-15 10:31:46,439 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:31:46,439 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:31:46,439 INFO L418 AbstractCegarLoop]: === Iteration 12 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:31:46,439 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:31:46,440 INFO L82 PathProgramCache]: Analyzing trace with hash 896688854, now seen corresponding path program 1 times [2019-05-15 10:31:46,440 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:31:46,453 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:31:46,454 WARN L254 TraceCheckSpWp]: Trace formula consists of 30 conjuncts, 15 conjunts are in the unsatisfiable core [2019-05-15 10:31:46,472 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:31:46,473 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:31:46,586 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:31:46,586 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,622 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:46,622 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,622 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:31:46,624 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:46,624 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_48|]. (= |#valid| (store |v_#valid_48| ULTIMATE.start_main_p1 1)) [2019-05-15 10:31:46,625 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:31:46,659 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:46,659 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:31:46,663 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,667 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:46,667 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,667 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:4 [2019-05-15 10:31:46,669 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:46,669 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_49|]. (and (<= (select |v_#valid_49| ULTIMATE.start_main_p2) 0) (= 1 (select |v_#valid_49| ULTIMATE.start_main_p1))) [2019-05-15 10:31:46,669 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) [2019-05-15 10:31:46,693 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:31:46,693 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,701 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:46,701 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,702 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:10 [2019-05-15 10:31:46,704 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:46,704 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_50|]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#valid| (store |v_#valid_50| ULTIMATE.start_main_p4 1))) [2019-05-15 10:31:46,705 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p4) 1)) [2019-05-15 10:31:46,774 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:46,775 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 39 [2019-05-15 10:31:46,776 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,812 INFO L567 ElimStorePlain]: treesize reduction 14, result has 57.6 percent of original size [2019-05-15 10:31:46,812 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,813 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:21, output treesize:19 [2019-05-15 10:31:46,815 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:46,815 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_51|]. (and (= |#valid| (store |v_#valid_51| ULTIMATE.start_main_p5 1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (<= (select |v_#valid_51| ULTIMATE.start_main_p5) 0) (= (select |v_#valid_51| ULTIMATE.start_main_p4) 1)) [2019-05-15 10:31:46,816 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 1 (select |#valid| ULTIMATE.start_main_p5))) [2019-05-15 10:31:46,881 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:46,882 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 16 treesize of output 26 [2019-05-15 10:31:46,886 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,894 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:46,894 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,894 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:24, output treesize:17 [2019-05-15 10:31:46,897 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:46,897 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_52|]. (and (= (select |v_#valid_52| ULTIMATE.start_main_p5) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (<= (select |v_#valid_52| ULTIMATE.start_main_p6) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 1 (select |v_#valid_52| ULTIMATE.start_main_p4))) [2019-05-15 10:31:46,898 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:31:46,929 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:31:46,929 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,940 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:46,940 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,940 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:23, output treesize:22 [2019-05-15 10:31:46,944 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:46,944 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_116|]. (and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (store |v_#memory_int_116| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:31:46,945 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:31:46,986 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:31:46,987 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:46,999 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:47,002 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:47,002 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:28, output treesize:27 [2019-05-15 10:31:47,006 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:47,006 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_117|, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_117| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (store |v_#memory_int_117| ULTIMATE.start_main_p2 0) |#memory_int|) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:31:47,006 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:31:47,077 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:47,078 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:31:47,079 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:47,126 INFO L567 ElimStorePlain]: treesize reduction 28, result has 53.3 percent of original size [2019-05-15 10:31:47,128 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:47,129 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:33, output treesize:32 [2019-05-15 10:31:47,132 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:47,132 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_118|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= 0 (select |v_#memory_int_118| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (store |v_#memory_int_118| ULTIMATE.start_main_p3 0) |#memory_int|) (= (select |v_#memory_int_118| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:31:47,132 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:31:47,197 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:47,197 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:31:47,198 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:47,242 INFO L567 ElimStorePlain]: treesize reduction 28, result has 53.3 percent of original size [2019-05-15 10:31:47,244 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:47,244 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:33, output treesize:32 [2019-05-15 10:31:47,341 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:47,342 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 22 treesize of output 74 [2019-05-15 10:31:47,346 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:47,401 INFO L567 ElimStorePlain]: treesize reduction 48, result has 43.5 percent of original size [2019-05-15 10:31:47,404 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:47,404 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:38, output treesize:37 [2019-05-15 10:31:47,409 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:47,410 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_120|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_120| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_120| ULTIMATE.start_main_p5 0)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |v_#memory_int_120| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= (select |v_#memory_int_120| ULTIMATE.start_main_p4) 0)) [2019-05-15 10:31:47,410 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:31:47,496 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:47,497 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 22 treesize of output 60 [2019-05-15 10:31:47,498 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:47,535 INFO L567 ElimStorePlain]: treesize reduction 14, result has 70.2 percent of original size [2019-05-15 10:31:47,538 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:47,539 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:34, output treesize:33 [2019-05-15 10:31:47,544 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:47,544 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_121|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p5]. (and (= 0 (select |v_#memory_int_121| ULTIMATE.start_main_p5)) (= (select |v_#memory_int_121| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (store |v_#memory_int_121| ULTIMATE.start_main_p6 0) |#memory_int|) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |v_#memory_int_121| ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:31:47,544 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p6]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:31:59,691 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:31:59,691 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 31 treesize of output 107 [2019-05-15 10:31:59,693 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:31:59,753 INFO L567 ElimStorePlain]: treesize reduction 30, result has 60.0 percent of original size [2019-05-15 10:31:59,761 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:31:59,762 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:43, output treesize:45 [2019-05-15 10:31:59,778 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:31:59,779 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_122|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6]. (let ((.cse0 (select |v_#memory_int_122| ULTIMATE.start_main_p1))) (and (= 0 (select |v_#memory_int_122| ULTIMATE.start_main_p5)) (= .cse0 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= 0 (select |v_#memory_int_122| ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |v_#memory_int_122| ULTIMATE.start_main_p6)) (= (store |v_#memory_int_122| ULTIMATE.start_main_p1 (+ .cse0 1)) |#memory_int|) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-05-15 10:31:59,779 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p6]. (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:00,330 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:32:00,331 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 39 [2019-05-15 10:32:00,333 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:00,372 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:32:00,379 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 39 [2019-05-15 10:32:00,400 INFO L496 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:00,417 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:32:00,423 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 39 [2019-05-15 10:32:00,425 INFO L496 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:00,471 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:00,471 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 4 case distinctions, treesize of input 43 treesize of output 87 [2019-05-15 10:32:00,474 INFO L496 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:00,569 INFO L567 ElimStorePlain]: treesize reduction 91, result has 41.7 percent of original size [2019-05-15 10:32:00,574 INFO L496 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 6 dim-0 vars, and 3 xjuncts. [2019-05-15 10:32:00,574 INFO L221 ElimStorePlain]: Needed 5 recursive calls to eliminate 4 variables, input treesize:158, output treesize:65 [2019-05-15 10:32:00,581 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:00,582 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_123|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6]. (let ((.cse1 (select |v_#memory_int_123| ULTIMATE.start_main_p1)) (.cse12 (select |v_#memory_int_123| ULTIMATE.start_main_p4))) (let ((.cse2 (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5))) (.cse4 (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6))) (.cse10 (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4))) (.cse0 (= (select |v_#memory_int_123| ULTIMATE.start_main_p5) 0)) (.cse7 (= .cse12 0)) (.cse11 (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4))) (.cse3 (= .cse1 1)) (.cse8 (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4))) (.cse9 (= (store |v_#memory_int_123| ULTIMATE.start_main_p4 (+ .cse12 (- 1))) |#memory_int|)) (.cse5 (= 0 (select |v_#memory_int_123| ULTIMATE.start_main_p6))) (.cse6 (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (or (and .cse0 (= |#memory_int| (store |v_#memory_int_123| ULTIMATE.start_main_p1 (+ .cse1 (- 1)))) .cse2 .cse3 .cse4 .cse5 .cse6) (and .cse0 .cse7 .cse2 .cse3 .cse8 .cse9 .cse10) (and .cse7 .cse11 .cse3 .cse4 .cse9 .cse5 .cse10) (and .cse0 .cse7 .cse11 .cse3 .cse8 .cse9 .cse5 .cse6)))) [2019-05-15 10:32:00,582 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, v_prenex_3, ULTIMATE.start_main_p4, ULTIMATE.start_main_p6, v_prenex_4, v_prenex_5]. (let ((.cse1 (select |#memory_int| ULTIMATE.start_main_p1))) (let ((.cse0 (= .cse1 1))) (or (and .cse0 (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (+ (select |#memory_int| v_prenex_3) 1) 0)) (and .cse0 (= (+ (select |#memory_int| ULTIMATE.start_main_p4) 1) 0) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (and (= 0 (select |#memory_int| v_prenex_4)) (not (= ULTIMATE.start_main_p1 v_prenex_4)) (= .cse1 0) (not (= ULTIMATE.start_main_p1 v_prenex_5)) (not (= v_prenex_5 v_prenex_4)) (= 0 (select |#memory_int| v_prenex_5)))))) [2019-05-15 10:32:00,655 INFO L273 TraceCheckUtils]: 0: Hoare triple {3308#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {3308#true} is VALID [2019-05-15 10:32:00,656 INFO L273 TraceCheckUtils]: 1: Hoare triple {3308#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {3316#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:32:00,657 INFO L273 TraceCheckUtils]: 2: Hoare triple {3316#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {3320#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:32:00,658 INFO L273 TraceCheckUtils]: 3: Hoare triple {3320#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {3320#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:32:00,658 INFO L273 TraceCheckUtils]: 4: Hoare triple {3320#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {3327#(and (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} is VALID [2019-05-15 10:32:00,660 INFO L273 TraceCheckUtils]: 5: Hoare triple {3327#(and (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {3331#(and (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:00,661 INFO L273 TraceCheckUtils]: 6: Hoare triple {3331#(and (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {3335#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:00,662 INFO L273 TraceCheckUtils]: 7: Hoare triple {3335#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p1 := 0]; {3339#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:00,663 INFO L273 TraceCheckUtils]: 8: Hoare triple {3339#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p2 := 0]; {3343#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:00,664 INFO L273 TraceCheckUtils]: 9: Hoare triple {3343#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p3 := 0]; {3343#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:00,666 INFO L273 TraceCheckUtils]: 10: Hoare triple {3343#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p4 := 0]; {3350#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:00,668 INFO L273 TraceCheckUtils]: 11: Hoare triple {3350#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p5 := 0]; {3354#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (exists ((ULTIMATE.start_main_p5 Int)) (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} is VALID [2019-05-15 10:32:00,669 INFO L273 TraceCheckUtils]: 12: Hoare triple {3354#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (exists ((ULTIMATE.start_main_p5 Int)) (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} #memory_int := #memory_int[main_p6 := 0]; {3358#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int)) (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))} is VALID [2019-05-15 10:32:00,671 INFO L273 TraceCheckUtils]: 13: Hoare triple {3358#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int)) (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (= (select |#memory_int| ULTIMATE.start_main_p4) 0))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {3362#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int)) (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)))} is VALID [2019-05-15 10:32:00,674 INFO L273 TraceCheckUtils]: 14: Hoare triple {3362#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p6 Int)) (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p5 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p4) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)))} #memory_int := #memory_int[main_p4 := #memory_int[main_p4] - 1]; {3366#(or (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((v_prenex_4 Int) (v_prenex_5 Int)) (and (= 0 (select |#memory_int| v_prenex_5)) (not (= ULTIMATE.start_main_p1 v_prenex_5)) (= 0 (select |#memory_int| v_prenex_4)) (not (= v_prenex_5 v_prenex_4)) (not (= ULTIMATE.start_main_p1 v_prenex_4))))) (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((v_prenex_3 Int)) (= (+ (select |#memory_int| v_prenex_3) 1) 0)) (exists ((ULTIMATE.start_main_p5 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)))))} is VALID [2019-05-15 10:32:00,676 INFO L273 TraceCheckUtils]: 15: Hoare triple {3366#(or (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((v_prenex_4 Int) (v_prenex_5 Int)) (and (= 0 (select |#memory_int| v_prenex_5)) (not (= ULTIMATE.start_main_p1 v_prenex_5)) (= 0 (select |#memory_int| v_prenex_4)) (not (= v_prenex_5 v_prenex_4)) (not (= ULTIMATE.start_main_p1 v_prenex_4))))) (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((v_prenex_3 Int)) (= (+ (select |#memory_int| v_prenex_3) 1) 0)) (exists ((ULTIMATE.start_main_p5 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p5)))))} assume !(#memory_int[main_p1] >= 0); {3309#false} is VALID [2019-05-15 10:32:00,678 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:32:00,678 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:32:00,678 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2019-05-15 10:32:00,679 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 16 [2019-05-15 10:32:00,679 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:32:00,679 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2019-05-15 10:32:00,704 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:32:00,704 INFO L454 AbstractCegarLoop]: Interpolant automaton has 14 states [2019-05-15 10:32:00,704 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2019-05-15 10:32:00,704 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=148, Unknown=1, NotChecked=0, Total=182 [2019-05-15 10:32:00,705 INFO L87 Difference]: Start difference. First operand 41 states and 96 transitions. Second operand 14 states. [2019-05-15 10:32:03,000 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:03,000 INFO L93 Difference]: Finished difference Result 76 states and 138 transitions. [2019-05-15 10:32:03,000 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2019-05-15 10:32:03,001 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 16 [2019-05-15 10:32:03,001 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:32:03,001 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2019-05-15 10:32:03,002 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 98 transitions. [2019-05-15 10:32:03,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2019-05-15 10:32:03,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 98 transitions. [2019-05-15 10:32:03,003 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 98 transitions. [2019-05-15 10:32:03,320 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:32:03,322 INFO L225 Difference]: With dead ends: 76 [2019-05-15 10:32:03,322 INFO L226 Difference]: Without dead ends: 76 [2019-05-15 10:32:03,323 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 2 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 13.3s TimeCoverageRelationStatistics Valid=167, Invalid=432, Unknown=1, NotChecked=0, Total=600 [2019-05-15 10:32:03,323 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2019-05-15 10:32:03,325 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 41. [2019-05-15 10:32:03,326 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:32:03,326 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand 41 states. [2019-05-15 10:32:03,326 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand 41 states. [2019-05-15 10:32:03,326 INFO L87 Difference]: Start difference. First operand 76 states. Second operand 41 states. [2019-05-15 10:32:03,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:03,328 INFO L93 Difference]: Finished difference Result 76 states and 138 transitions. [2019-05-15 10:32:03,328 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 138 transitions. [2019-05-15 10:32:03,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:32:03,328 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:32:03,328 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand 76 states. [2019-05-15 10:32:03,329 INFO L87 Difference]: Start difference. First operand 41 states. Second operand 76 states. [2019-05-15 10:32:03,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:03,330 INFO L93 Difference]: Finished difference Result 76 states and 138 transitions. [2019-05-15 10:32:03,330 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 138 transitions. [2019-05-15 10:32:03,331 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:32:03,331 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:32:03,331 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:32:03,331 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:32:03,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2019-05-15 10:32:03,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 96 transitions. [2019-05-15 10:32:03,332 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 96 transitions. Word has length 16 [2019-05-15 10:32:03,332 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:32:03,333 INFO L475 AbstractCegarLoop]: Abstraction has 41 states and 96 transitions. [2019-05-15 10:32:03,333 INFO L476 AbstractCegarLoop]: Interpolant automaton has 14 states. [2019-05-15 10:32:03,333 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 96 transitions. [2019-05-15 10:32:03,333 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2019-05-15 10:32:03,333 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:32:03,333 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:32:03,334 INFO L418 AbstractCegarLoop]: === Iteration 13 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:32:03,334 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:32:03,334 INFO L82 PathProgramCache]: Analyzing trace with hash 896703858, now seen corresponding path program 2 times [2019-05-15 10:32:03,335 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:32:03,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:32:03,346 INFO L256 TraceCheckSpWp]: Trace formula consists of 30 conjuncts, 13 conjunts are in the unsatisfiable core [2019-05-15 10:32:03,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:32:03,375 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:32:03,382 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:32:03,382 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,428 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:03,428 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,429 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:32:03,444 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:03,444 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_53|]. (= |#valid| (store |v_#valid_53| ULTIMATE.start_main_p1 1)) [2019-05-15 10:32:03,444 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:32:03,520 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:03,521 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:32:03,534 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,535 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:03,536 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,536 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:4 [2019-05-15 10:32:03,537 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:03,537 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_54|]. (and (<= (select |v_#valid_54| ULTIMATE.start_main_p2) 0) (= 1 (select |v_#valid_54| ULTIMATE.start_main_p1))) [2019-05-15 10:32:03,537 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) [2019-05-15 10:32:03,551 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:32:03,551 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,556 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:03,557 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,557 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:10 [2019-05-15 10:32:03,560 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:03,560 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_55|]. (and (= |#valid| (store |v_#valid_55| ULTIMATE.start_main_p5 1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) [2019-05-15 10:32:03,560 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |#valid| ULTIMATE.start_main_p5))) [2019-05-15 10:32:03,585 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:03,586 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:32:03,588 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,591 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:03,591 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,591 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:15, output treesize:9 [2019-05-15 10:32:03,593 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:03,594 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_56|]. (and (<= (select |v_#valid_56| ULTIMATE.start_main_p6) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#valid_56| ULTIMATE.start_main_p5) 1)) [2019-05-15 10:32:03,594 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:03,614 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:32:03,615 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,620 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:03,621 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,621 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:15, output treesize:14 [2019-05-15 10:32:03,624 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:03,624 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_124|]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_124| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:03,624 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:03,651 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:32:03,653 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,660 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:03,661 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:03,662 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:20, output treesize:19 [2019-05-15 10:32:03,663 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:03,664 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_125|, ULTIMATE.start_main_p2]. (and (= (store |v_#memory_int_125| ULTIMATE.start_main_p2 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_125| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:03,664 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:03,716 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:03,716 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:32:03,717 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,749 INFO L567 ElimStorePlain]: treesize reduction 28, result has 46.2 percent of original size [2019-05-15 10:32:03,751 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:03,751 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:25, output treesize:24 [2019-05-15 10:32:03,753 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:03,753 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_126|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_126| ULTIMATE.start_main_p2) 0) (= (store |v_#memory_int_126| ULTIMATE.start_main_p3 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_126| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:03,753 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:03,801 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:03,802 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:32:03,802 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,834 INFO L567 ElimStorePlain]: treesize reduction 28, result has 46.2 percent of original size [2019-05-15 10:32:03,840 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:03,840 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:25, output treesize:24 [2019-05-15 10:32:03,842 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:03,842 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_127|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (= 0 (select |v_#memory_int_127| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_127| ULTIMATE.start_main_p4 0) |#memory_int|) (= 0 (select |v_#memory_int_127| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:03,843 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:03,899 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:03,899 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:32:03,900 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:03,934 INFO L567 ElimStorePlain]: treesize reduction 28, result has 46.2 percent of original size [2019-05-15 10:32:03,936 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:03,936 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:25, output treesize:24 [2019-05-15 10:32:04,016 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:04,017 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 22 treesize of output 74 [2019-05-15 10:32:04,018 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:04,055 INFO L567 ElimStorePlain]: treesize reduction 28, result has 50.9 percent of original size [2019-05-15 10:32:04,057 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:04,057 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:30, output treesize:29 [2019-05-15 10:32:04,060 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:04,060 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_129|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_129| ULTIMATE.start_main_p1) 0) (= (store |v_#memory_int_129| ULTIMATE.start_main_p6 0) |#memory_int|) (= (select |v_#memory_int_129| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_129| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:04,060 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:04,161 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:04,161 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 26 treesize of output 59 [2019-05-15 10:32:04,163 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:04,186 INFO L567 ElimStorePlain]: treesize reduction 14, result has 58.8 percent of original size [2019-05-15 10:32:04,188 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:04,189 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:30, output treesize:20 [2019-05-15 10:32:04,195 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:04,196 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_130|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6]. (let ((.cse0 (select |v_#memory_int_130| ULTIMATE.start_main_p5))) (and (= 0 .cse0) (= 0 (select |v_#memory_int_130| ULTIMATE.start_main_p1)) (= (store |v_#memory_int_130| ULTIMATE.start_main_p5 (+ .cse0 1)) |#memory_int|) (= 0 (select |v_#memory_int_130| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-05-15 10:32:04,196 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p6]. (and (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:32:04,241 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:32:04,312 INFO L341 Elim1Store]: treesize reduction 8, result has 88.1 percent of original size [2019-05-15 10:32:04,313 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 26 treesize of output 75 [2019-05-15 10:32:04,315 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:04,337 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:04,338 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 21 treesize of output 43 [2019-05-15 10:32:04,340 INFO L496 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:04,397 INFO L567 ElimStorePlain]: treesize reduction 34, result has 56.4 percent of original size [2019-05-15 10:32:04,400 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 2 xjuncts. [2019-05-15 10:32:04,400 INFO L221 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:48, output treesize:35 [2019-05-15 10:32:04,408 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:04,409 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_131|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p5]. (let ((.cse2 (select |v_#memory_int_131| ULTIMATE.start_main_p1))) (let ((.cse0 (= (store |v_#memory_int_131| ULTIMATE.start_main_p1 (+ .cse2 1)) |#memory_int|)) (.cse1 (= (select |v_#memory_int_131| ULTIMATE.start_main_p6) 0))) (or (and .cse0 .cse1 (= .cse2 0) (= 1 (select |v_#memory_int_131| ULTIMATE.start_main_p5))) (and (= .cse2 1) .cse0 .cse1)))) [2019-05-15 10:32:04,409 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6, ULTIMATE.start_main_p5]. (let ((.cse1 (select |#memory_int| ULTIMATE.start_main_p1))) (or (let ((.cse0 (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6))) (and (or .cse0 (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (not .cse0) (= .cse1 2))) (and (= .cse1 1) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))))) [2019-05-15 10:32:04,442 INFO L273 TraceCheckUtils]: 0: Hoare triple {3660#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {3660#true} is VALID [2019-05-15 10:32:04,443 INFO L273 TraceCheckUtils]: 1: Hoare triple {3660#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {3668#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:32:04,444 INFO L273 TraceCheckUtils]: 2: Hoare triple {3668#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {3672#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:32:04,445 INFO L273 TraceCheckUtils]: 3: Hoare triple {3672#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {3672#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:32:04,445 INFO L273 TraceCheckUtils]: 4: Hoare triple {3672#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {3672#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:32:04,446 INFO L273 TraceCheckUtils]: 5: Hoare triple {3672#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {3682#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:04,447 INFO L273 TraceCheckUtils]: 6: Hoare triple {3682#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {3686#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:04,453 INFO L273 TraceCheckUtils]: 7: Hoare triple {3686#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p1 := 0]; {3690#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:04,454 INFO L273 TraceCheckUtils]: 8: Hoare triple {3690#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p2 := 0]; {3694#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:04,455 INFO L273 TraceCheckUtils]: 9: Hoare triple {3694#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p3 := 0]; {3694#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:04,455 INFO L273 TraceCheckUtils]: 10: Hoare triple {3694#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p4 := 0]; {3694#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:04,456 INFO L273 TraceCheckUtils]: 11: Hoare triple {3694#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p5 := 0]; {3704#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:04,457 INFO L273 TraceCheckUtils]: 12: Hoare triple {3704#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p6 := 0]; {3708#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int)) (and (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} is VALID [2019-05-15 10:32:04,459 INFO L273 TraceCheckUtils]: 13: Hoare triple {3708#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int)) (and (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {3712#(and (exists ((ULTIMATE.start_main_p5 Int)) (and (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)))) (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))))} is VALID [2019-05-15 10:32:04,461 INFO L273 TraceCheckUtils]: 14: Hoare triple {3712#(and (exists ((ULTIMATE.start_main_p5 Int)) (and (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)))) (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))))} #memory_int := #memory_int[main_p1 := #memory_int[main_p1] + 1]; {3716#(or (and (= (select |#memory_int| ULTIMATE.start_main_p1) 2) (exists ((ULTIMATE.start_main_p6 Int)) (and (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6))))) (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p5 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))))))} is VALID [2019-05-15 10:32:04,462 INFO L273 TraceCheckUtils]: 15: Hoare triple {3716#(or (and (= (select |#memory_int| ULTIMATE.start_main_p1) 2) (exists ((ULTIMATE.start_main_p6 Int)) (and (or (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6))))) (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((ULTIMATE.start_main_p5 Int)) (and (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5))))))} assume !(#memory_int[main_p1] >= 0); {3661#false} is VALID [2019-05-15 10:32:04,464 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:32:04,464 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:32:04,464 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2019-05-15 10:32:04,465 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 16 [2019-05-15 10:32:04,465 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:32:04,465 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2019-05-15 10:32:04,486 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:32:04,487 INFO L454 AbstractCegarLoop]: Interpolant automaton has 12 states [2019-05-15 10:32:04,487 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2019-05-15 10:32:04,487 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2019-05-15 10:32:04,488 INFO L87 Difference]: Start difference. First operand 41 states and 96 transitions. Second operand 12 states. [2019-05-15 10:32:07,062 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:07,062 INFO L93 Difference]: Finished difference Result 74 states and 144 transitions. [2019-05-15 10:32:07,062 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2019-05-15 10:32:07,062 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 16 [2019-05-15 10:32:07,063 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:32:07,063 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2019-05-15 10:32:07,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2019-05-15 10:32:07,063 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2019-05-15 10:32:07,064 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2019-05-15 10:32:07,064 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 85 transitions. [2019-05-15 10:32:07,210 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:32:07,212 INFO L225 Difference]: With dead ends: 74 [2019-05-15 10:32:07,212 INFO L226 Difference]: Without dead ends: 74 [2019-05-15 10:32:07,212 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 3 SyntacticMatches, 2 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=102, Invalid=278, Unknown=0, NotChecked=0, Total=380 [2019-05-15 10:32:07,213 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2019-05-15 10:32:07,214 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 42. [2019-05-15 10:32:07,214 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:32:07,214 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand 42 states. [2019-05-15 10:32:07,214 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand 42 states. [2019-05-15 10:32:07,214 INFO L87 Difference]: Start difference. First operand 74 states. Second operand 42 states. [2019-05-15 10:32:07,216 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:07,216 INFO L93 Difference]: Finished difference Result 74 states and 144 transitions. [2019-05-15 10:32:07,216 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 144 transitions. [2019-05-15 10:32:07,217 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:32:07,218 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:32:07,218 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 74 states. [2019-05-15 10:32:07,218 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 74 states. [2019-05-15 10:32:07,219 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:07,219 INFO L93 Difference]: Finished difference Result 74 states and 144 transitions. [2019-05-15 10:32:07,219 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 144 transitions. [2019-05-15 10:32:07,219 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:32:07,219 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:32:07,220 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:32:07,220 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:32:07,220 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 42 states. [2019-05-15 10:32:07,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 103 transitions. [2019-05-15 10:32:07,221 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 103 transitions. Word has length 16 [2019-05-15 10:32:07,221 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:32:07,221 INFO L475 AbstractCegarLoop]: Abstraction has 42 states and 103 transitions. [2019-05-15 10:32:07,221 INFO L476 AbstractCegarLoop]: Interpolant automaton has 12 states. [2019-05-15 10:32:07,221 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 103 transitions. [2019-05-15 10:32:07,221 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2019-05-15 10:32:07,221 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:32:07,222 INFO L399 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:32:07,222 INFO L418 AbstractCegarLoop]: === Iteration 14 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:32:07,222 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:32:07,222 INFO L82 PathProgramCache]: Analyzing trace with hash 896704354, now seen corresponding path program 2 times [2019-05-15 10:32:07,223 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:32:07,246 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:32:07,247 INFO L256 TraceCheckSpWp]: Trace formula consists of 30 conjuncts, 13 conjunts are in the unsatisfiable core [2019-05-15 10:32:07,266 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:32:07,267 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:32:07,379 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:32:07,380 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,417 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:07,417 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,417 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:32:07,433 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:07,433 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_57|]. (= |#valid| (store |v_#valid_57| ULTIMATE.start_main_p1 1)) [2019-05-15 10:32:07,433 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:32:07,680 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:07,680 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:32:07,682 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,684 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:07,684 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,684 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:4 [2019-05-15 10:32:07,686 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:07,686 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_58|]. (and (<= (select |v_#valid_58| ULTIMATE.start_main_p2) 0) (= 1 (select |v_#valid_58| ULTIMATE.start_main_p1))) [2019-05-15 10:32:07,686 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) [2019-05-15 10:32:07,699 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:32:07,699 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,704 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:07,705 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,705 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:10 [2019-05-15 10:32:07,707 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:07,707 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_59|]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#valid| (store |v_#valid_59| ULTIMATE.start_main_p5 1))) [2019-05-15 10:32:07,708 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |#valid| ULTIMATE.start_main_p5))) [2019-05-15 10:32:07,730 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:07,730 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 15 [2019-05-15 10:32:07,732 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,735 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:07,735 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,735 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:15, output treesize:9 [2019-05-15 10:32:07,737 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:07,738 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_60|]. (and (<= (select |v_#valid_60| ULTIMATE.start_main_p6) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |v_#valid_60| ULTIMATE.start_main_p5))) [2019-05-15 10:32:07,738 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:07,762 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:32:07,763 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,769 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:07,769 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,770 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:15, output treesize:14 [2019-05-15 10:32:07,773 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:07,774 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_132|]. (and (= (store |v_#memory_int_132| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:07,774 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:07,803 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:32:07,804 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,813 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:07,814 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:07,815 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:20, output treesize:19 [2019-05-15 10:32:07,817 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:07,818 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_133|, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_133| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= (store |v_#memory_int_133| ULTIMATE.start_main_p2 0) |#memory_int|)) [2019-05-15 10:32:07,818 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:07,880 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:07,881 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:32:07,881 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,910 INFO L567 ElimStorePlain]: treesize reduction 28, result has 46.2 percent of original size [2019-05-15 10:32:07,912 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:07,913 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:25, output treesize:24 [2019-05-15 10:32:07,916 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:07,916 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_134|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (= 0 (select |v_#memory_int_134| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_134| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= |#memory_int| (store |v_#memory_int_134| ULTIMATE.start_main_p3 0))) [2019-05-15 10:32:07,917 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p3]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:07,963 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:07,964 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:32:07,964 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:07,994 INFO L567 ElimStorePlain]: treesize reduction 28, result has 46.2 percent of original size [2019-05-15 10:32:07,996 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:07,996 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:25, output treesize:24 [2019-05-15 10:32:07,999 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:08,000 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_135|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (= (select |v_#memory_int_135| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_135| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)) (= (store |v_#memory_int_135| ULTIMATE.start_main_p4 0) |#memory_int|)) [2019-05-15 10:32:08,000 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:08,046 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:08,046 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:32:08,047 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:08,077 INFO L567 ElimStorePlain]: treesize reduction 28, result has 46.2 percent of original size [2019-05-15 10:32:08,079 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:08,079 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:25, output treesize:24 [2019-05-15 10:32:08,158 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:08,158 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 2 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 22 treesize of output 74 [2019-05-15 10:32:08,159 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:08,194 INFO L567 ElimStorePlain]: treesize reduction 28, result has 50.9 percent of original size [2019-05-15 10:32:08,196 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:08,196 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:30, output treesize:29 [2019-05-15 10:32:08,200 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:08,200 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_137|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p2]. (and (= 0 (select |v_#memory_int_137| ULTIMATE.start_main_p5)) (= (select |v_#memory_int_137| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_137| ULTIMATE.start_main_p2) 0) (= |#memory_int| (store |v_#memory_int_137| ULTIMATE.start_main_p6 0)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:08,200 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p6]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:08,280 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:08,280 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 26 treesize of output 59 [2019-05-15 10:32:08,283 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:08,304 INFO L567 ElimStorePlain]: treesize reduction 14, result has 58.8 percent of original size [2019-05-15 10:32:08,305 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:08,305 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:30, output treesize:20 [2019-05-15 10:32:08,308 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:08,309 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_138|, ULTIMATE.start_main_p6]. (let ((.cse0 (select |v_#memory_int_138| ULTIMATE.start_main_p5))) (and (= (select |v_#memory_int_138| ULTIMATE.start_main_p1) 0) (= (store |v_#memory_int_138| ULTIMATE.start_main_p5 (+ .cse0 1)) |#memory_int|) (= 0 .cse0) (= 0 (select |v_#memory_int_138| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-05-15 10:32:08,309 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p6]. (and (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:32:08,412 INFO L341 Elim1Store]: treesize reduction 8, result has 88.1 percent of original size [2019-05-15 10:32:08,413 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 26 treesize of output 75 [2019-05-15 10:32:08,415 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:08,436 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:08,437 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 21 treesize of output 43 [2019-05-15 10:32:08,438 INFO L496 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:08,485 INFO L567 ElimStorePlain]: treesize reduction 54, result has 34.1 percent of original size [2019-05-15 10:32:08,486 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 3 dim-0 vars, and 2 xjuncts. [2019-05-15 10:32:08,486 INFO L221 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:48, output treesize:28 [2019-05-15 10:32:20,660 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:20,660 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_139|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p6]. (let ((.cse2 (= 0 (select |v_#memory_int_139| ULTIMATE.start_main_p6))) (.cse0 (select |v_#memory_int_139| ULTIMATE.start_main_p1))) (or (let ((.cse1 (select |v_#memory_int_139| ULTIMATE.start_main_p5))) (and (= .cse0 0) (= .cse1 1) .cse2 (= |#memory_int| (store |v_#memory_int_139| ULTIMATE.start_main_p5 (+ .cse1 1))))) (and (= |#memory_int| (store |v_#memory_int_139| ULTIMATE.start_main_p1 (+ .cse0 1))) .cse2 (= .cse0 1)))) [2019-05-15 10:32:20,660 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, v_prenex_6, ULTIMATE.start_main_p6]. (let ((.cse0 (select |#memory_int| ULTIMATE.start_main_p1))) (or (and (= .cse0 2) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (and (= 2 (select |#memory_int| ULTIMATE.start_main_p5)) (= .cse0 0) (= 0 (select |#memory_int| v_prenex_6))))) [2019-05-15 10:32:20,766 INFO L273 TraceCheckUtils]: 0: Hoare triple {3999#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {3999#true} is VALID [2019-05-15 10:32:20,767 INFO L273 TraceCheckUtils]: 1: Hoare triple {3999#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {4007#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:32:20,768 INFO L273 TraceCheckUtils]: 2: Hoare triple {4007#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {4011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:32:20,769 INFO L273 TraceCheckUtils]: 3: Hoare triple {4011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {4011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:32:20,775 INFO L273 TraceCheckUtils]: 4: Hoare triple {4011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {4011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} is VALID [2019-05-15 10:32:20,775 INFO L273 TraceCheckUtils]: 5: Hoare triple {4011#(not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {4021#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:20,776 INFO L273 TraceCheckUtils]: 6: Hoare triple {4021#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {4025#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:20,776 INFO L273 TraceCheckUtils]: 7: Hoare triple {4025#(and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p1 := 0]; {4029#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:20,777 INFO L273 TraceCheckUtils]: 8: Hoare triple {4029#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p2 := 0]; {4033#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:20,778 INFO L273 TraceCheckUtils]: 9: Hoare triple {4033#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p3 := 0]; {4033#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:20,779 INFO L273 TraceCheckUtils]: 10: Hoare triple {4033#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p4 := 0]; {4033#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:20,780 INFO L273 TraceCheckUtils]: 11: Hoare triple {4033#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p5 := 0]; {4043#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:20,780 INFO L273 TraceCheckUtils]: 12: Hoare triple {4043#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p6 := 0]; {4047#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int)) (and (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} is VALID [2019-05-15 10:32:20,782 INFO L273 TraceCheckUtils]: 13: Hoare triple {4047#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p6 Int)) (and (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {4051#(and (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)) (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))))} is VALID [2019-05-15 10:32:20,784 INFO L273 TraceCheckUtils]: 14: Hoare triple {4051#(and (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)) (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {4055#(or (and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (= (select |#memory_int| ULTIMATE.start_main_p1) 2)) (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int)) (= 2 (select |#memory_int| ULTIMATE.start_main_p5)))))} is VALID [2019-05-15 10:32:20,785 INFO L273 TraceCheckUtils]: 15: Hoare triple {4055#(or (and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) (= (select |#memory_int| ULTIMATE.start_main_p1) 2)) (and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (exists ((ULTIMATE.start_main_p5 Int)) (= 2 (select |#memory_int| ULTIMATE.start_main_p5)))))} assume !(#memory_int[main_p1] >= 0); {4000#false} is VALID [2019-05-15 10:32:20,787 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:32:20,787 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:32:20,787 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2019-05-15 10:32:20,788 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 16 [2019-05-15 10:32:20,788 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:32:20,788 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2019-05-15 10:32:20,809 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:32:20,809 INFO L454 AbstractCegarLoop]: Interpolant automaton has 12 states [2019-05-15 10:32:20,809 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2019-05-15 10:32:20,809 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2019-05-15 10:32:20,810 INFO L87 Difference]: Start difference. First operand 42 states and 103 transitions. Second operand 12 states. [2019-05-15 10:32:22,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:22,267 INFO L93 Difference]: Finished difference Result 72 states and 136 transitions. [2019-05-15 10:32:22,267 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2019-05-15 10:32:22,267 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 16 [2019-05-15 10:32:22,267 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:32:22,267 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2019-05-15 10:32:22,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2019-05-15 10:32:22,268 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2019-05-15 10:32:22,269 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 85 transitions. [2019-05-15 10:32:22,269 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 85 transitions. [2019-05-15 10:32:22,415 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:32:22,416 INFO L225 Difference]: With dead ends: 72 [2019-05-15 10:32:22,416 INFO L226 Difference]: Without dead ends: 72 [2019-05-15 10:32:22,416 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 3 SyntacticMatches, 2 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=102, Invalid=278, Unknown=0, NotChecked=0, Total=380 [2019-05-15 10:32:22,417 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states. [2019-05-15 10:32:22,420 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 44. [2019-05-15 10:32:22,420 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:32:22,420 INFO L82 GeneralOperation]: Start isEquivalent. First operand 72 states. Second operand 44 states. [2019-05-15 10:32:22,420 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand 44 states. [2019-05-15 10:32:22,420 INFO L87 Difference]: Start difference. First operand 72 states. Second operand 44 states. [2019-05-15 10:32:22,422 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:22,422 INFO L93 Difference]: Finished difference Result 72 states and 136 transitions. [2019-05-15 10:32:22,422 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 136 transitions. [2019-05-15 10:32:22,422 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:32:22,422 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:32:22,422 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand 72 states. [2019-05-15 10:32:22,422 INFO L87 Difference]: Start difference. First operand 44 states. Second operand 72 states. [2019-05-15 10:32:22,424 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:22,424 INFO L93 Difference]: Finished difference Result 72 states and 136 transitions. [2019-05-15 10:32:22,424 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 136 transitions. [2019-05-15 10:32:22,425 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:32:22,425 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:32:22,425 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:32:22,425 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:32:22,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 44 states. [2019-05-15 10:32:22,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 107 transitions. [2019-05-15 10:32:22,426 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 107 transitions. Word has length 16 [2019-05-15 10:32:22,426 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:32:22,426 INFO L475 AbstractCegarLoop]: Abstraction has 44 states and 107 transitions. [2019-05-15 10:32:22,427 INFO L476 AbstractCegarLoop]: Interpolant automaton has 12 states. [2019-05-15 10:32:22,427 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 107 transitions. [2019-05-15 10:32:22,427 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2019-05-15 10:32:22,427 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:32:22,427 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:32:22,428 INFO L418 AbstractCegarLoop]: === Iteration 15 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:32:22,428 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:32:22,428 INFO L82 PathProgramCache]: Analyzing trace with hash 896704416, now seen corresponding path program 1 times [2019-05-15 10:32:22,429 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:32:22,441 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:32:22,442 WARN L254 TraceCheckSpWp]: Trace formula consists of 30 conjuncts, 16 conjunts are in the unsatisfiable core [2019-05-15 10:32:22,454 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:32:22,455 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:32:22,586 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:32:22,587 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:22,627 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:22,627 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:22,628 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:32:22,637 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:22,637 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_61|]. (= |#valid| (store |v_#valid_61| ULTIMATE.start_main_p1 1)) [2019-05-15 10:32:22,637 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:32:22,834 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:22,834 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 39 [2019-05-15 10:32:22,837 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:22,852 INFO L567 ElimStorePlain]: treesize reduction 14, result has 51.7 percent of original size [2019-05-15 10:32:22,853 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:22,853 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:17, output treesize:15 [2019-05-15 10:32:22,856 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:22,856 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_62|]. (and (= |#valid| (store |v_#valid_62| ULTIMATE.start_main_p2 1)) (= (select |v_#valid_62| ULTIMATE.start_main_p1) 1) (<= (select |v_#valid_62| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:32:22,856 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1)) [2019-05-15 10:32:22,898 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:22,899 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:32:22,899 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:22,925 INFO L567 ElimStorePlain]: treesize reduction 28, result has 41.7 percent of original size [2019-05-15 10:32:22,925 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:22,926 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:21, output treesize:20 [2019-05-15 10:32:22,996 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:22,996 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 5 case distinctions, treesize of input 22 treesize of output 88 [2019-05-15 10:32:22,997 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,034 INFO L567 ElimStorePlain]: treesize reduction 42, result has 37.3 percent of original size [2019-05-15 10:32:23,035 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,035 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:26, output treesize:25 [2019-05-15 10:32:23,173 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:23,174 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 1 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 9 case distinctions, treesize of input 27 treesize of output 134 [2019-05-15 10:32:23,175 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,224 INFO L567 ElimStorePlain]: treesize reduction 56, result has 34.9 percent of original size [2019-05-15 10:32:23,224 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,224 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:31, output treesize:30 [2019-05-15 10:32:23,334 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:23,334 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 6 select indices, 6 select index equivalence classes, 1 disjoint index pairs (out of 15 index pairs), introduced 6 new quantified variables, introduced 14 case distinctions, treesize of input 31 treesize of output 131 [2019-05-15 10:32:23,358 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,367 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:23,367 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,368 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:35, output treesize:25 [2019-05-15 10:32:23,372 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:23,372 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_66|]. (and (= (select |v_#valid_66| ULTIMATE.start_main_p3) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |v_#valid_66| ULTIMATE.start_main_p5)) (<= (select |v_#valid_66| ULTIMATE.start_main_p6) 0) (= (select |v_#valid_66| ULTIMATE.start_main_p2) 1) (= (select |v_#valid_66| ULTIMATE.start_main_p1) 1) (= (select |v_#valid_66| ULTIMATE.start_main_p4) 1)) [2019-05-15 10:32:23,372 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:23,411 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:32:23,412 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,424 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:23,424 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,425 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:31, output treesize:30 [2019-05-15 10:32:23,428 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:23,428 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_140|]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (= (store |v_#memory_int_140| ULTIMATE.start_main_p1 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:23,428 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:23,501 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:32:23,502 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,517 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:23,520 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:23,521 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:36, output treesize:35 [2019-05-15 10:32:23,524 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:23,524 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_141|, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= |#memory_int| (store |v_#memory_int_141| ULTIMATE.start_main_p2 0)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |v_#memory_int_141| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:23,525 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:23,619 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:23,619 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:32:23,620 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,665 INFO L567 ElimStorePlain]: treesize reduction 28, result has 58.8 percent of original size [2019-05-15 10:32:23,670 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:23,670 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:41, output treesize:40 [2019-05-15 10:32:23,674 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:23,675 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_142|, ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= |#memory_int| (store |v_#memory_int_142| ULTIMATE.start_main_p3 0)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |v_#memory_int_142| ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_142| ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:23,675 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p2]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:23,761 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:23,762 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:32:23,762 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,803 INFO L567 ElimStorePlain]: treesize reduction 28, result has 56.3 percent of original size [2019-05-15 10:32:23,808 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:23,808 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:37, output treesize:36 [2019-05-15 10:32:23,813 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:23,813 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_143|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p2]. (and (= (store |v_#memory_int_143| ULTIMATE.start_main_p4 0) |#memory_int|) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= (select |v_#memory_int_143| ULTIMATE.start_main_p1) 0) (= (select |v_#memory_int_143| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:23,814 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p4) 0) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5))) [2019-05-15 10:32:23,896 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:23,896 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 4 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 50 [2019-05-15 10:32:23,897 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:23,935 INFO L567 ElimStorePlain]: treesize reduction 28, result has 53.3 percent of original size [2019-05-15 10:32:23,938 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:23,938 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:33, output treesize:32 [2019-05-15 10:32:24,026 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:24,027 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 22 treesize of output 46 [2019-05-15 10:32:24,029 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:24,062 INFO L567 ElimStorePlain]: treesize reduction 10, result has 78.7 percent of original size [2019-05-15 10:32:24,065 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:24,065 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:38, output treesize:37 [2019-05-15 10:32:24,161 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:24,161 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 4 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 4 case distinctions, treesize of input 31 treesize of output 83 [2019-05-15 10:32:24,163 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:24,208 INFO L567 ElimStorePlain]: treesize reduction 24, result has 63.1 percent of original size [2019-05-15 10:32:24,214 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:24,214 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:47, output treesize:41 [2019-05-15 10:32:24,563 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:24,563 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_146|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (let ((.cse0 (select |v_#memory_int_146| ULTIMATE.start_main_p5))) (and (= (select |v_#memory_int_146| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (= 0 (select |v_#memory_int_146| ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_146| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= .cse0 0) (= (store |v_#memory_int_146| ULTIMATE.start_main_p5 (+ .cse0 1)) |#memory_int|) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))) [2019-05-15 10:32:24,563 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p2, ULTIMATE.start_main_p5]. (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:32:24,669 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:32:24,671 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 39 [2019-05-15 10:32:24,691 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:24,727 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:32:24,755 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:24,755 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 4 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 4 case distinctions, treesize of input 43 treesize of output 87 [2019-05-15 10:32:24,758 INFO L496 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:24,770 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 39 [2019-05-15 10:32:24,772 INFO L496 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:24,875 WARN L188 SmtUtils]: Spent 102.00 ms on a formula simplification. DAG size of input: 40 DAG size of output: 24 [2019-05-15 10:32:24,876 INFO L567 ElimStorePlain]: treesize reduction 70, result has 47.8 percent of original size [2019-05-15 10:32:24,878 INFO L496 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 7 dim-0 vars, and 3 xjuncts. [2019-05-15 10:32:24,878 INFO L221 ElimStorePlain]: Needed 4 recursive calls to eliminate 4 variables, input treesize:120, output treesize:64 [2019-05-15 10:32:24,894 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:24,894 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_147|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p5, ULTIMATE.start_main_p2]. (let ((.cse6 (select |v_#memory_int_147| ULTIMATE.start_main_p1)) (.cse9 (select |v_#memory_int_147| ULTIMATE.start_main_p6)) (.cse8 (select |v_#memory_int_147| ULTIMATE.start_main_p2))) (let ((.cse4 (= 0 .cse8)) (.cse0 (= (store |v_#memory_int_147| ULTIMATE.start_main_p6 (+ .cse9 (- 1))) |#memory_int|)) (.cse1 (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6))) (.cse2 (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1))) (.cse3 (= .cse9 0)) (.cse5 (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6))) (.cse7 (= 0 .cse6))) (or (and .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 (= 1 .cse6)) (and (= 1 (select |v_#memory_int_147| ULTIMATE.start_main_p5)) .cse0 .cse1 .cse2 .cse3 .cse4 .cse5 .cse7) (and .cse0 .cse1 .cse2 .cse3 .cse5 (= 1 .cse8) .cse7)))) [2019-05-15 10:32:24,894 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [v_prenex_10, ULTIMATE.start_main_p5, v_prenex_9, ULTIMATE.start_main_p2, ULTIMATE.start_main_p6, v_prenex_8, v_prenex_7]. (let ((.cse1 (select |#memory_int| ULTIMATE.start_main_p1))) (let ((.cse0 (= .cse1 0))) (or (and .cse0 (not (= v_prenex_10 ULTIMATE.start_main_p1)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)) (= 0 (select |#memory_int| v_prenex_10)) (= 0 (+ (select |#memory_int| v_prenex_9) 1))) (and (= 1 (select |#memory_int| ULTIMATE.start_main_p2)) .cse0 (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))) (and (= .cse1 1) (= 0 (select |#memory_int| v_prenex_8)) (= 0 (+ (select |#memory_int| v_prenex_7) 1)))))) [2019-05-15 10:32:24,965 INFO L273 TraceCheckUtils]: 0: Hoare triple {4334#true} havoc main_p1, main_p2, main_p3, main_p4, main_p5, main_p6; {4334#true} is VALID [2019-05-15 10:32:24,969 INFO L273 TraceCheckUtils]: 1: Hoare triple {4334#true} SUMMARY for call main_p1 := malloc(); srcloc: L17 {4342#(= (select |#valid| ULTIMATE.start_main_p1) 1)} is VALID [2019-05-15 10:32:24,969 INFO L273 TraceCheckUtils]: 2: Hoare triple {4342#(= (select |#valid| ULTIMATE.start_main_p1) 1)} SUMMARY for call main_p2 := malloc(); srcloc: L17-1 {4346#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} is VALID [2019-05-15 10:32:24,970 INFO L273 TraceCheckUtils]: 3: Hoare triple {4346#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} SUMMARY for call main_p3 := malloc(); srcloc: L18 {4350#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} is VALID [2019-05-15 10:32:24,971 INFO L273 TraceCheckUtils]: 4: Hoare triple {4350#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} SUMMARY for call main_p4 := malloc(); srcloc: L19 {4354#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} is VALID [2019-05-15 10:32:24,972 INFO L273 TraceCheckUtils]: 5: Hoare triple {4354#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1))} SUMMARY for call main_p5 := malloc(); srcloc: L20 {4358#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:24,972 INFO L273 TraceCheckUtils]: 6: Hoare triple {4358#(and (= (select |#valid| ULTIMATE.start_main_p1) 1) (= (select |#valid| ULTIMATE.start_main_p3) 1) (= (select |#valid| ULTIMATE.start_main_p4) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1) (= 1 (select |#valid| ULTIMATE.start_main_p5)))} SUMMARY for call main_p6 := malloc(); srcloc: L21 {4362#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:24,973 INFO L273 TraceCheckUtils]: 7: Hoare triple {4362#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p1 := 0]; {4366#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:24,974 INFO L273 TraceCheckUtils]: 8: Hoare triple {4366#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p2 := 0]; {4370#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:24,976 INFO L273 TraceCheckUtils]: 9: Hoare triple {4370#(and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p3 := 0]; {4374#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:24,977 INFO L273 TraceCheckUtils]: 10: Hoare triple {4374#(and (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p4)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p4 := 0]; {4378#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:24,979 INFO L273 TraceCheckUtils]: 11: Hoare triple {4378#(and (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p5 := 0]; {4382#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:24,980 INFO L273 TraceCheckUtils]: 12: Hoare triple {4382#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p6 := 0]; {4386#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} is VALID [2019-05-15 10:32:24,982 INFO L273 TraceCheckUtils]: 13: Hoare triple {4386#(and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (exists ((ULTIMATE.start_main_p2 Int)) (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)))) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p6 ULTIMATE.start_main_p5)))} #memory_int := #memory_int[main_p5 := #memory_int[main_p5] + 1]; {4390#(and (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int)) (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)))) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))} is VALID [2019-05-15 10:32:24,984 INFO L273 TraceCheckUtils]: 14: Hoare triple {4390#(and (exists ((ULTIMATE.start_main_p5 Int) (ULTIMATE.start_main_p2 Int)) (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p6)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)))) (not (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p6)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6)))} #memory_int := #memory_int[main_p6 := #memory_int[main_p6] - 1]; {4394#(or (and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))) (exists ((ULTIMATE.start_main_p2 Int)) (= 1 (select |#memory_int| ULTIMATE.start_main_p2))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0)) (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((v_prenex_8 Int)) (= 0 (select |#memory_int| v_prenex_8))) (exists ((v_prenex_7 Int)) (= 0 (+ (select |#memory_int| v_prenex_7) 1)))))} is VALID [2019-05-15 10:32:24,986 INFO L273 TraceCheckUtils]: 15: Hoare triple {4394#(or (and (exists ((ULTIMATE.start_main_p6 Int)) (= 0 (+ (select |#memory_int| ULTIMATE.start_main_p6) 1))) (exists ((ULTIMATE.start_main_p2 Int)) (= 1 (select |#memory_int| ULTIMATE.start_main_p2))) (= (select |#memory_int| ULTIMATE.start_main_p1) 0)) (and (= (select |#memory_int| ULTIMATE.start_main_p1) 1) (exists ((v_prenex_8 Int)) (= 0 (select |#memory_int| v_prenex_8))) (exists ((v_prenex_7 Int)) (= 0 (+ (select |#memory_int| v_prenex_7) 1)))))} assume !(#memory_int[main_p1] >= 0); {4335#false} is VALID [2019-05-15 10:32:24,989 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:32:24,989 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:32:24,989 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2019-05-15 10:32:24,989 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 16 [2019-05-15 10:32:24,989 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:32:24,989 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2019-05-15 10:32:25,013 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:32:25,013 INFO L454 AbstractCegarLoop]: Interpolant automaton has 16 states [2019-05-15 10:32:25,013 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2019-05-15 10:32:25,013 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=194, Unknown=0, NotChecked=0, Total=240 [2019-05-15 10:32:25,014 INFO L87 Difference]: Start difference. First operand 44 states and 107 transitions. Second operand 16 states. [2019-05-15 10:32:27,549 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:27,550 INFO L93 Difference]: Finished difference Result 76 states and 148 transitions. [2019-05-15 10:32:27,550 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2019-05-15 10:32:27,550 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 16 [2019-05-15 10:32:27,550 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:32:27,550 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2019-05-15 10:32:27,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 99 transitions. [2019-05-15 10:32:27,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2019-05-15 10:32:27,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 99 transitions. [2019-05-15 10:32:27,552 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 99 transitions. [2019-05-15 10:32:27,787 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:32:27,788 INFO L225 Difference]: With dead ends: 76 [2019-05-15 10:32:27,788 INFO L226 Difference]: Without dead ends: 74 [2019-05-15 10:32:27,789 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 73 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=132, Invalid=374, Unknown=0, NotChecked=0, Total=506 [2019-05-15 10:32:27,789 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2019-05-15 10:32:27,792 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 44. [2019-05-15 10:32:27,792 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:32:27,792 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand 44 states. [2019-05-15 10:32:27,792 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand 44 states. [2019-05-15 10:32:27,792 INFO L87 Difference]: Start difference. First operand 74 states. Second operand 44 states. [2019-05-15 10:32:27,794 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:27,794 INFO L93 Difference]: Finished difference Result 74 states and 146 transitions. [2019-05-15 10:32:27,794 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 146 transitions. [2019-05-15 10:32:27,794 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:32:27,794 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:32:27,795 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand 74 states. [2019-05-15 10:32:27,795 INFO L87 Difference]: Start difference. First operand 44 states. Second operand 74 states. [2019-05-15 10:32:27,796 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:32:27,796 INFO L93 Difference]: Finished difference Result 74 states and 146 transitions. [2019-05-15 10:32:27,797 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 146 transitions. [2019-05-15 10:32:27,797 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:32:27,797 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:32:27,797 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:32:27,797 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:32:27,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 44 states. [2019-05-15 10:32:27,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 106 transitions. [2019-05-15 10:32:27,798 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 106 transitions. Word has length 16 [2019-05-15 10:32:27,799 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:32:27,799 INFO L475 AbstractCegarLoop]: Abstraction has 44 states and 106 transitions. [2019-05-15 10:32:27,799 INFO L476 AbstractCegarLoop]: Interpolant automaton has 16 states. [2019-05-15 10:32:27,799 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 106 transitions. [2019-05-15 10:32:27,799 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2019-05-15 10:32:27,799 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:32:27,800 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:32:27,800 INFO L418 AbstractCegarLoop]: === Iteration 16 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT, ULTIMATE.startErr2ASSERT_VIOLATIONASSERT, ULTIMATE.startErr3ASSERT_VIOLATIONASSERT, ULTIMATE.startErr4ASSERT_VIOLATIONASSERT, ULTIMATE.startErr5ASSERT_VIOLATIONASSERT, ULTIMATE.startErr1ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:32:27,800 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:32:27,800 INFO L82 PathProgramCache]: Analyzing trace with hash 896703982, now seen corresponding path program 1 times [2019-05-15 10:32:27,801 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:32:27,816 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:32:27,817 INFO L256 TraceCheckSpWp]: Trace formula consists of 30 conjuncts, 13 conjunts are in the unsatisfiable core [2019-05-15 10:32:27,834 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:32:27,835 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:32:27,959 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:32:27,959 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:27,989 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:27,989 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:27,989 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2019-05-15 10:32:27,998 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:27,999 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_67|]. (= |#valid| (store |v_#valid_67| ULTIMATE.start_main_p1 1)) [2019-05-15 10:32:27,999 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| ULTIMATE.start_main_p1) 1) [2019-05-15 10:32:28,200 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:28,201 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 17 treesize of output 39 [2019-05-15 10:32:28,202 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,246 INFO L567 ElimStorePlain]: treesize reduction 14, result has 51.7 percent of original size [2019-05-15 10:32:28,246 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,246 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:17, output treesize:15 [2019-05-15 10:32:28,249 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:28,249 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_68|]. (and (<= (select |v_#valid_68| ULTIMATE.start_main_p2) 0) (= |#valid| (store |v_#valid_68| ULTIMATE.start_main_p2 1)) (= 1 (select |v_#valid_68| ULTIMATE.start_main_p1))) [2019-05-15 10:32:28,249 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#valid| ULTIMATE.start_main_p1) 1) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (select |#valid| ULTIMATE.start_main_p2) 1)) [2019-05-15 10:32:28,280 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:28,281 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 2 case distinctions, treesize of input 16 treesize of output 26 [2019-05-15 10:32:28,285 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,290 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:28,290 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,291 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:20, output treesize:13 [2019-05-15 10:32:28,293 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:28,293 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#valid_69|]. (and (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 1 (select |v_#valid_69| ULTIMATE.start_main_p2)) (<= (select |v_#valid_69| ULTIMATE.start_main_p3) 0) (= 1 (select |v_#valid_69| ULTIMATE.start_main_p1))) [2019-05-15 10:32:28,294 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-05-15 10:32:28,320 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 2 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2019-05-15 10:32:28,320 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,328 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:28,329 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,329 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:19, output treesize:18 [2019-05-15 10:32:28,331 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:28,332 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_148|]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_148| ULTIMATE.start_main_p1 0))) [2019-05-15 10:32:28,332 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ []. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-05-15 10:32:28,360 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 3 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 12 treesize of output 14 [2019-05-15 10:32:28,361 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,371 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:28,371 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,372 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:24, output treesize:23 [2019-05-15 10:32:28,414 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 22 [2019-05-15 10:32:28,415 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,427 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:28,430 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:28,430 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:29, output treesize:28 [2019-05-15 10:32:28,434 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:28,434 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_150|, ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= (store |v_#memory_int_150| ULTIMATE.start_main_p3 0) |#memory_int|) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_150| ULTIMATE.start_main_p2)) (= (select |v_#memory_int_150| ULTIMATE.start_main_p1) 0)) [2019-05-15 10:32:28,434 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) [2019-05-15 10:32:28,519 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:28,520 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 22 treesize of output 72 [2019-05-15 10:32:28,521 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,562 INFO L567 ElimStorePlain]: treesize reduction 42, result has 44.0 percent of original size [2019-05-15 10:32:28,565 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:28,565 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:34, output treesize:33 [2019-05-15 10:32:28,569 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:28,569 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_151|, ULTIMATE.start_main_p4, ULTIMATE.start_main_p3]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= 0 (select |v_#memory_int_151| ULTIMATE.start_main_p3)) (= (select |v_#memory_int_151| ULTIMATE.start_main_p2) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= |#memory_int| (store |v_#memory_int_151| ULTIMATE.start_main_p4 0)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |v_#memory_int_151| ULTIMATE.start_main_p1))) [2019-05-15 10:32:28,570 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p4]. (and (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (= (select |#memory_int| ULTIMATE.start_main_p4) 0)) [2019-05-15 10:32:28,668 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:28,669 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 3 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 22 treesize of output 72 [2019-05-15 10:32:28,669 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,716 INFO L567 ElimStorePlain]: treesize reduction 42, result has 44.0 percent of original size [2019-05-15 10:32:28,720 INFO L496 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:28,720 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:34, output treesize:33 [2019-05-15 10:32:28,848 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:28,849 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 7 case distinctions, treesize of input 27 treesize of output 118 [2019-05-15 10:32:28,849 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:28,907 INFO L567 ElimStorePlain]: treesize reduction 56, result has 40.4 percent of original size [2019-05-15 10:32:28,909 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:28,910 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:39, output treesize:38 [2019-05-15 10:32:28,913 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:28,913 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_153|, ULTIMATE.start_main_p6, ULTIMATE.start_main_p3]. (and (= (select |v_#memory_int_153| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |v_#memory_int_153| ULTIMATE.start_main_p3) 0) (= |#memory_int| (store |v_#memory_int_153| ULTIMATE.start_main_p6 0)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= (select |v_#memory_int_153| ULTIMATE.start_main_p5) 0) (= (select |v_#memory_int_153| ULTIMATE.start_main_p2) 0)) [2019-05-15 10:32:28,913 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p3, ULTIMATE.start_main_p6]. (and (= 0 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= (select |#memory_int| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)) (= 0 (select |#memory_int| ULTIMATE.start_main_p6))) [2019-05-15 10:32:29,011 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:29,012 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 31 treesize of output 107 [2019-05-15 10:32:29,013 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:29,121 WARN L188 SmtUtils]: Spent 107.00 ms on a formula simplification. DAG size of input: 37 DAG size of output: 28 [2019-05-15 10:32:29,121 INFO L567 ElimStorePlain]: treesize reduction 30, result has 60.0 percent of original size [2019-05-15 10:32:29,128 INFO L496 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-1 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2019-05-15 10:32:29,128 INFO L221 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:43, output treesize:45 [2019-05-15 10:32:41,667 WARN L402 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2019-05-15 10:32:41,667 WARN L403 uantifierElimination]: Input elimination task: ∃ [|v_#memory_int_154|, ULTIMATE.start_main_p5, ULTIMATE.start_main_p3]. (let ((.cse0 (select |v_#memory_int_154| ULTIMATE.start_main_p5))) (and (= (select |v_#memory_int_154| ULTIMATE.start_main_p2) 0) (= 0 (select |v_#memory_int_154| ULTIMATE.start_main_p1)) (= (select |v_#memory_int_154| ULTIMATE.start_main_p3) 0) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (= .cse0 0) (= |#memory_int| (store |v_#memory_int_154| ULTIMATE.start_main_p5 (+ .cse0 1))) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1)))) [2019-05-15 10:32:41,667 WARN L404 uantifierElimination]: ElimStorePlain result: ∃ [ULTIMATE.start_main_p5, ULTIMATE.start_main_p3]. (and (or (= 0 (select |#memory_int| ULTIMATE.start_main_p2)) (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p5)) (or (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p5) (= (select |#memory_int| ULTIMATE.start_main_p3) 0)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p2)) (not (= ULTIMATE.start_main_p2 ULTIMATE.start_main_p1)) (or (= (select |#memory_int| ULTIMATE.start_main_p1) 0) (= ULTIMATE.start_main_p1 ULTIMATE.start_main_p5)) (= 1 (select |#memory_int| ULTIMATE.start_main_p5)) (not (= ULTIMATE.start_main_p3 ULTIMATE.start_main_p1))) [2019-05-15 10:32:42,152 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:32:42,157 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 39 [2019-05-15 10:32:42,160 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:42,176 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:32:42,182 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 39 [2019-05-15 10:32:42,185 INFO L496 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:42,363 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-05-15 10:32:42,429 INFO L235 Elim1Store]: Index analysis took 130 ms [2019-05-15 10:32:42,431 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 3 select indices, 3 select index equivalence classes, 4 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 39 [2019-05-15 10:32:42,462 INFO L496 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:42,562 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-05-15 10:32:42,562 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 4 case distinctions, treesize of input 43 treesize of output 87 [2019-05-15 10:32:42,566 INFO L496 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2019-05-15 10:32:42,713 WARN L188 SmtUtils]: Spent 146.00 ms on a formula simplification. DAG size of input: 41 DAG size of output: 30 [2019-05-15 10:32:42,714 INFO L567 ElimStorePlain]: treesize reduction 64, result has 59.0 percent of original size [2019-05-15 10:32:42,720 INFO L496 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-1 vars, End of recursive call: 9 dim-0 vars, and 4 xjuncts. [2019-05-15 10:32:42,721 INFO L221 ElimStorePlain]: Needed 5 recursive calls to eliminate 4 variables, input treesize:158, output treesize:92 [2019-05-15 10:32:49,972 WARN L193 Executor]: External (z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000) stderr output: (error "out of memory") [2019-05-15 10:32:49,973 FATAL L265 ToolchainWalker]: An unrecoverable error occured during an interaction with an SMT solver: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000)Received EOF on stdin. stderr output: (error "out of memory") at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:207) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parseCheckSatResult(Executor.java:224) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Scriptor.checkSat(Scriptor.java:153) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.WrapperScript.checkSat(WrapperScript.java:116) at de.uni_freiburg.informatik.ultimate.logic.Util.checkSat(Util.java:61) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.EliminationTask.areDistinct(EliminationTask.java:106) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.PartialQuantifierElimination.validateEquivalence(PartialQuantifierElimination.java:400) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.PartialQuantifierElimination.elim(PartialQuantifierElimination.java:313) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.PartialQuantifierElimination.tryToEliminate(PartialQuantifierElimination.java:102) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer$QuantifierEliminationPostprocessor.postprocess(IterativePredicateTransformer.java:245) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer.applyPostprocessors(IterativePredicateTransformer.java:439) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.IterativePredicateTransformer.computeStrongestPostconditionSequence(IterativePredicateTransformer.java:200) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.computeInterpolantsUsingUnsatCore(TraceCheckSpWp.java:292) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.computeInterpolants(TraceCheckSpWp.java:175) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.singletracecheck.TraceCheckSpWp.(TraceCheckSpWp.java:162) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceCheckConstructor.constructForwardBackward(TraceCheckConstructor.java:224) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceCheckConstructor.constructTraceCheck(TraceCheckConstructor.java:188) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceCheckConstructor.get(TraceCheckConstructor.java:165) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.FixedRefinementStrategy.getTraceCheck(FixedRefinementStrategy.java:134) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.checkFeasibility(BaseRefinementStrategy.java:223) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.BaseRefinementStrategy.executeStrategy(BaseRefinementStrategy.java:197) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.tracehandling.TraceAbstractionRefinementEngine.(TraceAbstractionRefinementEngine.java:70) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.isCounterexampleFeasible(BasicCegarLoop.java:453) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterateInternal(AbstractCegarLoop.java:429) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:371) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.iterate(TraceAbstractionStarter.java:332) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:170) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:122) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:120) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:317) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: EOF at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1427) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser.do_action(Parser.java:630) at com.github.jhoenicke.javacup.runtime.LRParser.parse(LRParser.java:419) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:204) ... 38 more [2019-05-15 10:32:50,032 INFO L168 Benchmark]: Toolchain (without parser) took 163111.40 ms. Allocated memory was 134.2 MB in the beginning and 293.1 MB in the end (delta: 158.9 MB). Free memory was 111.6 MB in the beginning and 274.8 MB in the end (delta: -163.3 MB). Peak memory consumption was 178.3 MB. Max. memory is 7.1 GB. [2019-05-15 10:32:50,032 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.20 ms. Allocated memory is still 134.2 MB. Free memory is still 113.0 MB. There was no memory consumed. Max. memory is 7.1 GB. [2019-05-15 10:32:50,033 INFO L168 Benchmark]: Boogie Procedure Inliner took 72.92 ms. Allocated memory is still 134.2 MB. Free memory was 111.6 MB in the beginning and 109.1 MB in the end (delta: 2.4 MB). Peak memory consumption was 2.4 MB. Max. memory is 7.1 GB. [2019-05-15 10:32:50,033 INFO L168 Benchmark]: Boogie Preprocessor took 36.57 ms. Allocated memory is still 134.2 MB. Free memory was 109.1 MB in the beginning and 108.0 MB in the end (delta: 1.1 MB). Peak memory consumption was 1.1 MB. Max. memory is 7.1 GB. [2019-05-15 10:32:50,033 INFO L168 Benchmark]: RCFGBuilder took 619.95 ms. Allocated memory is still 134.2 MB. Free memory was 108.0 MB in the beginning and 90.2 MB in the end (delta: 17.8 MB). Peak memory consumption was 17.8 MB. Max. memory is 7.1 GB. [2019-05-15 10:32:50,033 INFO L168 Benchmark]: TraceAbstraction took 162322.26 ms. Allocated memory was 134.2 MB in the beginning and 274.2 MB in the end (delta: 140.0 MB). Free memory was 89.8 MB in the beginning and 73.3 MB in the end (delta: 16.5 MB). Peak memory consumption was 156.4 MB. Max. memory is 7.1 GB. [2019-05-15 10:32:50,035 INFO L337 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - GenericResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.20 ms. Allocated memory is still 134.2 MB. Free memory is still 113.0 MB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 72.92 ms. Allocated memory is still 134.2 MB. Free memory was 111.6 MB in the beginning and 109.1 MB in the end (delta: 2.4 MB). Peak memory consumption was 2.4 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 36.57 ms. Allocated memory is still 134.2 MB. Free memory was 109.1 MB in the beginning and 108.0 MB in the end (delta: 1.1 MB). Peak memory consumption was 1.1 MB. Max. memory is 7.1 GB. * RCFGBuilder took 619.95 ms. Allocated memory is still 134.2 MB. Free memory was 108.0 MB in the beginning and 90.2 MB in the end (delta: 17.8 MB). Peak memory consumption was 17.8 MB. Max. memory is 7.1 GB. * TraceAbstraction took 162322.26 ms. Allocated memory was 134.2 MB in the beginning and 274.2 MB in the end (delta: 140.0 MB). Free memory was 89.8 MB in the beginning and 73.3 MB in the end (delta: 16.5 MB). Peak memory consumption was 156.4 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000)Received EOF on stdin. stderr output: (error "out of memory") de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000)Received EOF on stdin. stderr output: (error "out of memory") : de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:207) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...