java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerBplInline.xml -i ../../../trunk/examples/programs/20181010-MemSafetyPathprograms/sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-b8c145f [2019-08-05 11:00:50,021 INFO L177 SettingsManager]: Resetting all preferences to default values... [2019-08-05 11:00:50,023 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2019-08-05 11:00:50,035 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-08-05 11:00:50,036 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-08-05 11:00:50,037 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-08-05 11:00:50,038 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-08-05 11:00:50,040 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2019-08-05 11:00:50,042 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-08-05 11:00:50,043 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-08-05 11:00:50,044 INFO L181 SettingsManager]: Resetting Symbolic Interpretation preferences to default values [2019-08-05 11:00:50,044 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-08-05 11:00:50,044 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-08-05 11:00:50,045 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-08-05 11:00:50,046 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-08-05 11:00:50,048 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-08-05 11:00:50,048 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-08-05 11:00:50,049 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-08-05 11:00:50,051 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-08-05 11:00:50,053 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2019-08-05 11:00:50,055 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-08-05 11:00:50,056 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-08-05 11:00:50,057 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2019-08-05 11:00:50,058 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-08-05 11:00:50,061 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-08-05 11:00:50,061 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-08-05 11:00:50,061 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-08-05 11:00:50,062 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2019-08-05 11:00:50,063 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-08-05 11:00:50,064 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2019-08-05 11:00:50,064 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-08-05 11:00:50,065 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2019-08-05 11:00:50,065 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-08-05 11:00:50,066 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2019-08-05 11:00:50,068 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-08-05 11:00:50,068 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2019-08-05 11:00:50,069 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-08-05 11:00:50,069 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-08-05 11:00:50,069 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2019-08-05 11:00:50,070 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2019-08-05 11:00:50,071 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2019-08-05 11:00:50,109 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-08-05 11:00:50,125 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-08-05 11:00:50,129 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-08-05 11:00:50,131 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-08-05 11:00:50,132 INFO L275 PluginConnector]: Boogie PL CUP Parser initialized [2019-08-05 11:00:50,133 INFO L428 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/20181010-MemSafetyPathprograms/sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl [2019-08-05 11:00:50,134 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/20181010-MemSafetyPathprograms/sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl' [2019-08-05 11:00:50,197 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-08-05 11:00:50,199 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2019-08-05 11:00:50,200 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-08-05 11:00:50,200 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-08-05 11:00:50,200 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2019-08-05 11:00:50,223 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 05.08 11:00:50" (1/1) ... [2019-08-05 11:00:50,256 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 05.08 11:00:50" (1/1) ... [2019-08-05 11:00:50,269 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-08-05 11:00:50,270 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-08-05 11:00:50,270 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-08-05 11:00:50,270 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2019-08-05 11:00:50,282 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 05.08 11:00:50" (1/1) ... [2019-08-05 11:00:50,282 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 05.08 11:00:50" (1/1) ... [2019-08-05 11:00:50,289 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 05.08 11:00:50" (1/1) ... [2019-08-05 11:00:50,290 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 05.08 11:00:50" (1/1) ... [2019-08-05 11:00:50,314 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 05.08 11:00:50" (1/1) ... [2019-08-05 11:00:50,316 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 05.08 11:00:50" (1/1) ... [2019-08-05 11:00:50,319 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 05.08 11:00:50" (1/1) ... [2019-08-05 11:00:50,323 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-08-05 11:00:50,324 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-08-05 11:00:50,324 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-08-05 11:00:50,324 INFO L275 PluginConnector]: RCFGBuilder initialized [2019-08-05 11:00:50,325 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 05.08 11:00:50" (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-08-05 11:00:50,388 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2019-08-05 11:00:50,389 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-08-05 11:00:50,389 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-08-05 11:00:50,911 INFO L278 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-08-05 11:00:50,911 INFO L283 CfgBuilder]: Removed 0 assume(true) statements. [2019-08-05 11:00:50,912 INFO L202 PluginConnector]: Adding new model sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 05.08 11:00:50 BoogieIcfgContainer [2019-08-05 11:00:50,913 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-08-05 11:00:50,915 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-08-05 11:00:50,915 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-08-05 11:00:50,923 INFO L275 PluginConnector]: TraceAbstraction initialized [2019-08-05 11:00:50,923 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 05.08 11:00:50" (1/2) ... [2019-08-05 11:00:50,926 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@21bc47d4 and model type sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.08 11:00:50, skipping insertion in model container [2019-08-05 11:00:50,927 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 05.08 11:00:50" (2/2) ... [2019-08-05 11:00:50,932 INFO L109 eAbstractionObserver]: Analyzing ICFG sll-buckets_true-unreach-call_true-valid-memsafety.i_44.bpl [2019-08-05 11:00:50,944 INFO L152 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2019-08-05 11:00:50,951 INFO L164 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2019-08-05 11:00:50,966 INFO L252 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2019-08-05 11:00:50,988 INFO L128 ementStrategyFactory]: Using default assertion order modulation [2019-08-05 11:00:50,989 INFO L377 AbstractCegarLoop]: Interprodecural is true [2019-08-05 11:00:50,989 INFO L378 AbstractCegarLoop]: Hoare is false [2019-08-05 11:00:50,989 INFO L379 AbstractCegarLoop]: Compute interpolants for ForwardPredicates [2019-08-05 11:00:50,990 INFO L380 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-08-05 11:00:50,990 INFO L381 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-08-05 11:00:50,990 INFO L382 AbstractCegarLoop]: Difference is false [2019-08-05 11:00:50,990 INFO L383 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-08-05 11:00:50,990 INFO L388 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-08-05 11:00:51,005 INFO L276 IsEmpty]: Start isEmpty. Operand 6 states. [2019-08-05 11:00:51,013 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5 [2019-08-05 11:00:51,014 INFO L391 BasicCegarLoop]: Found error trace [2019-08-05 11:00:51,015 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1] [2019-08-05 11:00:51,017 INFO L418 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-08-05 11:00:51,023 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-08-05 11:00:51,023 INFO L82 PathProgramCache]: Analyzing trace with hash 925639, now seen corresponding path program 1 times [2019-08-05 11:00:51,072 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-08-05 11:00:51,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-08-05 11:00:51,316 INFO L256 TraceCheckSpWp]: Trace formula consists of 169 conjuncts, 15 conjunts are in the unsatisfiable core [2019-08-05 11:00:51,324 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-08-05 11:00:51,490 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-08-05 11:00:51,493 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-08-05 11:00:51,493 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2019-08-05 11:00:51,498 INFO L454 AbstractCegarLoop]: Interpolant automaton has 4 states [2019-08-05 11:00:51,512 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2019-08-05 11:00:51,513 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2019-08-05 11:00:51,515 INFO L87 Difference]: Start difference. First operand 6 states. Second operand 4 states. [2019-08-05 11:00:51,674 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-08-05 11:00:51,674 INFO L93 Difference]: Finished difference Result 8 states and 8 transitions. [2019-08-05 11:00:51,675 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2019-08-05 11:00:51,676 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 4 [2019-08-05 11:00:51,677 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-08-05 11:00:51,687 INFO L225 Difference]: With dead ends: 8 [2019-08-05 11:00:51,687 INFO L226 Difference]: Without dead ends: 8 [2019-08-05 11:00:51,689 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2019-08-05 11:00:51,707 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 8 states. [2019-08-05 11:00:51,720 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 8 to 7. [2019-08-05 11:00:51,722 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2019-08-05 11:00:51,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 7 transitions. [2019-08-05 11:00:51,724 INFO L78 Accepts]: Start accepts. Automaton has 7 states and 7 transitions. Word has length 4 [2019-08-05 11:00:51,724 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-08-05 11:00:51,724 INFO L475 AbstractCegarLoop]: Abstraction has 7 states and 7 transitions. [2019-08-05 11:00:51,724 INFO L476 AbstractCegarLoop]: Interpolant automaton has 4 states. [2019-08-05 11:00:51,725 INFO L276 IsEmpty]: Start isEmpty. Operand 7 states and 7 transitions. [2019-08-05 11:00:51,725 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2019-08-05 11:00:51,725 INFO L391 BasicCegarLoop]: Found error trace [2019-08-05 11:00:51,725 INFO L399 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1] [2019-08-05 11:00:51,726 INFO L418 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-08-05 11:00:51,726 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-08-05 11:00:51,726 INFO L82 PathProgramCache]: Analyzing trace with hash 889591169, now seen corresponding path program 1 times [2019-08-05 11:00:51,727 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-08-05 11:00:51,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-08-05 11:00:51,969 INFO L256 TraceCheckSpWp]: Trace formula consists of 243 conjuncts, 51 conjunts are in the unsatisfiable core [2019-08-05 11:00:51,971 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-08-05 11:00:52,017 INFO L392 ElimStorePlain]: Different costs {1=[|ULTIMATE.start_#Ultimate.alloc_old_#valid|], 3=[|ULTIMATE.start_main_old_#valid|]} [2019-08-05 11:00:52,164 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-08-05 11:00:52,165 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-08-05 11:00:52,166 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:52,169 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:52,355 WARN L188 SmtUtils]: Spent 184.00 ms on a formula simplification that was a NOOP. DAG size: 46 [2019-08-05 11:00:52,356 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-08-05 11:00:52,483 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-08-05 11:00:52,484 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 24 treesize of output 28 [2019-08-05 11:00:52,485 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:52,485 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:52,487 INFO L496 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:52,991 WARN L188 SmtUtils]: Spent 503.00 ms on a formula simplification. DAG size of input: 45 DAG size of output: 43 [2019-08-05 11:00:52,992 INFO L567 ElimStorePlain]: treesize reduction 4, result has 96.8 percent of original size [2019-08-05 11:00:53,060 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-08-05 11:00:53,075 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-08-05 11:00:53,095 INFO L172 IndexEqualityManager]: detected equality via solver [2019-08-05 11:00:53,655 WARN L188 SmtUtils]: Spent 550.00 ms on a formula simplification. DAG size of input: 48 DAG size of output: 36 [2019-08-05 11:00:53,656 INFO L341 Elim1Store]: treesize reduction 89, result has 50.0 percent of original size [2019-08-05 11:00:53,657 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 5 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 3 case distinctions, treesize of input 94 treesize of output 112 [2019-08-05 11:00:53,658 INFO L496 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:53,859 WARN L188 SmtUtils]: Spent 199.00 ms on a formula simplification. DAG size of input: 60 DAG size of output: 53 [2019-08-05 11:00:53,860 INFO L567 ElimStorePlain]: treesize reduction 36, result has 74.1 percent of original size [2019-08-05 11:00:53,864 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 3 terms [2019-08-05 11:00:53,867 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:53,873 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:53,876 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:53,880 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:53,883 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:53,886 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:53,889 INFO L496 ElimStorePlain]: Start of recursive call 1: 9 dim-0 vars, 2 dim-1 vars, 1 dim-2 vars, End of recursive call: 11 dim-0 vars, and 3 xjuncts. [2019-08-05 11:00:53,889 INFO L221 ElimStorePlain]: Needed 4 recursive calls to eliminate 12 variables, input treesize:136, output treesize:196 [2019-08-05 11:00:53,890 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:53,891 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:53,892 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:53,995 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:54,193 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-08-05 11:00:54,207 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-08-05 11:00:54,494 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-08-05 11:00:54,495 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 2 case distinctions, treesize of input 83 treesize of output 125 [2019-08-05 11:00:54,498 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:54,524 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-08-05 11:00:54,527 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-08-05 11:00:54,687 WARN L188 SmtUtils]: Spent 112.00 ms on a formula simplification that was a NOOP. DAG size: 17 [2019-08-05 11:00:54,688 INFO L341 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2019-08-05 11:00:54,689 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 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 1 case distinctions, treesize of input 72 treesize of output 95 [2019-08-05 11:00:54,690 INFO L496 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:55,194 WARN L188 SmtUtils]: Spent 502.00 ms on a formula simplification. DAG size of input: 57 DAG size of output: 49 [2019-08-05 11:00:55,194 INFO L567 ElimStorePlain]: treesize reduction 54, result has 74.8 percent of original size [2019-08-05 11:00:55,196 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:55,199 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:55,202 INFO L496 ElimStorePlain]: Start of recursive call 1: 7 dim-0 vars, 1 dim-2 vars, End of recursive call: 10 dim-0 vars, and 2 xjuncts. [2019-08-05 11:00:55,203 INFO L221 ElimStorePlain]: Needed 3 recursive calls to eliminate 8 variables, input treesize:156, output treesize:146 [2019-08-05 11:00:55,203 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:55,204 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:55,561 WARN L188 SmtUtils]: Spent 324.00 ms on a formula simplification. DAG size of input: 73 DAG size of output: 63 [2019-08-05 11:00:55,572 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:55,573 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:55,577 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:55,583 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:55,586 INFO L320 QuantifierPusher]: Applying distributivity, recursing on 2 terms [2019-08-05 11:00:55,896 INFO L392 ElimStorePlain]: Different costs {0=[|#memory_$Pointer$.base|], 72=[|#memory_$Pointer$.offset|]} [2019-08-05 11:00:55,908 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 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 59 treesize of output 55 [2019-08-05 11:00:55,910 INFO L496 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:55,936 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 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 66 treesize of output 62 [2019-08-05 11:00:55,937 INFO L496 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:55,960 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 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 68 treesize of output 64 [2019-08-05 11:00:55,961 INFO L496 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:55,969 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 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 54 treesize of output 50 [2019-08-05 11:00:55,970 INFO L496 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:56,187 WARN L188 SmtUtils]: Spent 215.00 ms on a formula simplification. DAG size of input: 70 DAG size of output: 65 [2019-08-05 11:00:56,187 INFO L567 ElimStorePlain]: treesize reduction 59, result has 73.2 percent of original size [2019-08-05 11:00:56,194 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-08-05 11:00:56,226 INFO L189 IndexEqualityManager]: detected not equals via solver [2019-08-05 11:00:56,235 INFO L172 IndexEqualityManager]: detected equality via solver [2019-08-05 11:00:56,243 INFO L172 IndexEqualityManager]: detected equality via solver [2019-08-05 11:00:56,246 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 2 disjoint index pairs (out of 6 index pairs), introduced 3 new quantified variables, introduced 0 case distinctions, treesize of input 61 treesize of output 37 [2019-08-05 11:00:56,247 INFO L496 ElimStorePlain]: Start of recursive call 6: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:56,254 INFO L172 IndexEqualityManager]: detected equality via solver [2019-08-05 11:00:56,256 INFO L172 IndexEqualityManager]: detected equality via solver [2019-08-05 11:00:56,258 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 52 treesize of output 34 [2019-08-05 11:00:56,259 INFO L496 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:56,269 INFO L172 IndexEqualityManager]: detected equality via solver [2019-08-05 11:00:56,271 INFO L375 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 47 treesize of output 29 [2019-08-05 11:00:56,271 INFO L496 ElimStorePlain]: Start of recursive call 8: End of recursive call: and 1 xjuncts. [2019-08-05 11:00:56,320 INFO L567 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2019-08-05 11:00:56,323 INFO L496 ElimStorePlain]: Start of recursive call 1: 11 dim-0 vars, 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2019-08-05 11:00:56,323 INFO L221 ElimStorePlain]: Needed 8 recursive calls to eliminate 13 variables, input treesize:248, output treesize:3 [2019-08-05 11:00:56,348 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-08-05 11:00:56,349 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-08-05 11:00:56,349 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [5] total 5 [2019-08-05 11:00:56,351 INFO L454 AbstractCegarLoop]: Interpolant automaton has 6 states [2019-08-05 11:00:56,352 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2019-08-05 11:00:56,352 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2019-08-05 11:00:56,352 INFO L87 Difference]: Start difference. First operand 7 states and 7 transitions. Second operand 6 states. [2019-08-05 11:01:00,377 WARN L188 SmtUtils]: Spent 3.98 s on a formula simplification that was a NOOP. DAG size: 99 [2019-08-05 11:01:02,695 WARN L188 SmtUtils]: Spent 1.52 s on a formula simplification that was a NOOP. DAG size: 74 [2019-08-05 11:01:11,905 WARN L193 Executor]: External (z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000) stderr output: (error "out of memory") [2019-08-05 11:01:11,908 FATAL L? ?]: 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) Connection to SMT solver broken at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.input(Executor.java:122) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Scriptor.pop(Scriptor.java:137) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.arrays.DiffWrapperScript.pop(DiffWrapperScript.java:102) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.smt.managedscript.ManagedScript.pop(ManagedScript.java:131) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.IncrementalHoareTripleChecker.unAssertPostcondition(IncrementalHoareTripleChecker.java:660) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.IncrementalHoareTripleChecker.clearAssertionStack(IncrementalHoareTripleChecker.java:264) at de.uni_freiburg.informatik.ultimate.modelcheckerutils.hoaretriple.IncrementalHoareTripleChecker.releaseLock(IncrementalHoareTripleChecker.java:279) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.ProtectiveHoareTripleChecker.releaseLock(ProtectiveHoareTripleChecker.java:94) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.EfficientHoareTripleChecker.releaseLock(EfficientHoareTripleChecker.java:164) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.CachingHoareTripleChecker.releaseLock(CachingHoareTripleChecker.java:202) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.AbstractInterpolantAutomaton.switchToReadonlyMode(AbstractInterpolantAutomaton.java:141) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.computeAutomataDifference(BasicCegarLoop.java:712) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.refineAbstraction(BasicCegarLoop.java:625) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterateInternal(AbstractCegarLoop.java:467) 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:316) 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: java.io.IOException: Stream closed at java.lang.ProcessBuilder$NullOutputStream.write(ProcessBuilder.java:433) at java.io.OutputStream.write(OutputStream.java:116) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140) at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:297) at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:141) at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:229) at java.io.BufferedWriter.flush(BufferedWriter.java:254) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.input(Executor.java:119) ... 28 more [2019-08-05 11:01:11,912 INFO L168 Benchmark]: Toolchain (without parser) took 21713.39 ms. Allocated memory was 134.2 MB in the beginning and 232.3 MB in the end (delta: 98.0 MB). Free memory was 108.1 MB in the beginning and 172.7 MB in the end (delta: -64.6 MB). Peak memory consumption was 33.5 MB. Max. memory is 7.1 GB. [2019-08-05 11:01:11,914 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.22 ms. Allocated memory is still 134.2 MB. Free memory was 110.6 MB in the beginning and 110.4 MB in the end (delta: 210.0 kB). Peak memory consumption was 210.0 kB. Max. memory is 7.1 GB. [2019-08-05 11:01:11,914 INFO L168 Benchmark]: Boogie Procedure Inliner took 69.75 ms. Allocated memory is still 134.2 MB. Free memory was 108.1 MB in the beginning and 106.1 MB in the end (delta: 2.0 MB). Peak memory consumption was 2.0 MB. Max. memory is 7.1 GB. [2019-08-05 11:01:11,918 INFO L168 Benchmark]: Boogie Preprocessor took 53.38 ms. Allocated memory is still 134.2 MB. Free memory was 106.1 MB in the beginning and 104.3 MB in the end (delta: 1.8 MB). Peak memory consumption was 1.8 MB. Max. memory is 7.1 GB. [2019-08-05 11:01:11,918 INFO L168 Benchmark]: RCFGBuilder took 588.98 ms. Allocated memory is still 134.2 MB. Free memory was 104.3 MB in the beginning and 79.0 MB in the end (delta: 25.3 MB). Peak memory consumption was 25.3 MB. Max. memory is 7.1 GB. [2019-08-05 11:01:11,919 INFO L168 Benchmark]: TraceAbstraction took 20996.10 ms. Allocated memory was 134.2 MB in the beginning and 232.3 MB in the end (delta: 98.0 MB). Free memory was 78.8 MB in the beginning and 172.7 MB in the end (delta: -93.8 MB). Peak memory consumption was 4.2 MB. Max. memory is 7.1 GB. [2019-08-05 11:01:11,924 INFO L335 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.22 ms. Allocated memory is still 134.2 MB. Free memory was 110.6 MB in the beginning and 110.4 MB in the end (delta: 210.0 kB). Peak memory consumption was 210.0 kB. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 69.75 ms. Allocated memory is still 134.2 MB. Free memory was 108.1 MB in the beginning and 106.1 MB in the end (delta: 2.0 MB). Peak memory consumption was 2.0 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 53.38 ms. Allocated memory is still 134.2 MB. Free memory was 106.1 MB in the beginning and 104.3 MB in the end (delta: 1.8 MB). Peak memory consumption was 1.8 MB. Max. memory is 7.1 GB. * RCFGBuilder took 588.98 ms. Allocated memory is still 134.2 MB. Free memory was 104.3 MB in the beginning and 79.0 MB in the end (delta: 25.3 MB). Peak memory consumption was 25.3 MB. Max. memory is 7.1 GB. * TraceAbstraction took 20996.10 ms. Allocated memory was 134.2 MB in the beginning and 232.3 MB in the end (delta: 98.0 MB). Free memory was 78.8 MB in the beginning and 172.7 MB in the end (delta: -93.8 MB). Peak memory consumption was 4.2 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) Connection to SMT solver broken de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: SMTLIBException: External (z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000) Connection to SMT solver broken: de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.input(Executor.java:122) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request...