java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data --rcfgbuilder.command.for.external.solver 'z3 SMTLIB2_COMPLIANT=true -memory:4096 -smt2 -in -t:12000' -tc ../../../trunk/examples/toolchains/AutomizerBplInlineTransformed.xml --icfgtransformation.transformationtype MAP_ELIMINATION_MONNIAUX --rcfgbuilder.size.of.a.code.block SingleStatement --icfgtransformation.map.elimination.monniaux.number.of.cells 2 -i ../../../trunk/examples/programs/toy/tooDifficultLoopInvariant/PointerIncrement-simplified02.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-7aa59a0 [2019-05-23 10:02:44,783 INFO L146 ILogger]: Resetting all preferences to default values... [2019-05-23 10:02:44,785 INFO L146 ILogger]: Resetting UltimateCore preferences to default values [2019-05-23 10:02:44,798 INFO L146 ILogger]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-05-23 10:02:44,799 INFO L146 ILogger]: Resetting Boogie Preprocessor preferences to default values [2019-05-23 10:02:44,800 INFO L146 ILogger]: Resetting Boogie Procedure Inliner preferences to default values [2019-05-23 10:02:44,801 INFO L146 ILogger]: Resetting Abstract Interpretation preferences to default values [2019-05-23 10:02:44,803 INFO L146 ILogger]: Resetting LassoRanker preferences to default values [2019-05-23 10:02:44,804 INFO L146 ILogger]: Resetting Reaching Definitions preferences to default values [2019-05-23 10:02:44,805 INFO L146 ILogger]: Resetting SyntaxChecker preferences to default values [2019-05-23 10:02:44,806 INFO L146 ILogger]: Büchi Program Product provides no preferences, ignoring... [2019-05-23 10:02:44,806 INFO L146 ILogger]: Resetting LTL2Aut preferences to default values [2019-05-23 10:02:44,807 INFO L146 ILogger]: Resetting PEA to Boogie preferences to default values [2019-05-23 10:02:44,808 INFO L146 ILogger]: Resetting BlockEncodingV2 preferences to default values [2019-05-23 10:02:44,809 INFO L146 ILogger]: Resetting ChcToBoogie preferences to default values [2019-05-23 10:02:44,810 INFO L146 ILogger]: Resetting AutomataScriptInterpreter preferences to default values [2019-05-23 10:02:44,811 INFO L146 ILogger]: Resetting BuchiAutomizer preferences to default values [2019-05-23 10:02:44,813 INFO L146 ILogger]: Resetting CACSL2BoogieTranslator preferences to default values [2019-05-23 10:02:44,815 INFO L146 ILogger]: Resetting CodeCheck preferences to default values [2019-05-23 10:02:44,817 INFO L146 ILogger]: Resetting InvariantSynthesis preferences to default values [2019-05-23 10:02:44,818 INFO L146 ILogger]: Resetting RCFGBuilder preferences to default values [2019-05-23 10:02:44,819 INFO L146 ILogger]: Resetting TraceAbstraction preferences to default values [2019-05-23 10:02:44,821 INFO L146 ILogger]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-05-23 10:02:44,822 INFO L146 ILogger]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-05-23 10:02:44,822 INFO L146 ILogger]: Resetting TreeAutomizer preferences to default values [2019-05-23 10:02:44,823 INFO L146 ILogger]: Resetting IcfgToChc preferences to default values [2019-05-23 10:02:44,824 INFO L146 ILogger]: Resetting IcfgTransformer preferences to default values [2019-05-23 10:02:44,825 INFO L146 ILogger]: ReqToTest provides no preferences, ignoring... [2019-05-23 10:02:44,825 INFO L146 ILogger]: Resetting Boogie Printer preferences to default values [2019-05-23 10:02:44,826 INFO L146 ILogger]: Resetting ChcSmtPrinter preferences to default values [2019-05-23 10:02:44,827 INFO L146 ILogger]: Resetting ReqPrinter preferences to default values [2019-05-23 10:02:44,828 INFO L146 ILogger]: Resetting Witness Printer preferences to default values [2019-05-23 10:02:44,829 INFO L146 ILogger]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-05-23 10:02:44,829 INFO L146 ILogger]: Resetting CDTParser preferences to default values [2019-05-23 10:02:44,830 INFO L146 ILogger]: AutomataScriptParser provides no preferences, ignoring... [2019-05-23 10:02:44,830 INFO L146 ILogger]: ReqParser provides no preferences, ignoring... [2019-05-23 10:02:44,830 INFO L146 ILogger]: Resetting SmtParser preferences to default values [2019-05-23 10:02:44,831 INFO L146 ILogger]: Resetting Witness Parser preferences to default values [2019-05-23 10:02:44,832 INFO L146 ILogger]: Finished resetting all preferences to default values... Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder: Command for external solver -> z3 SMTLIB2_COMPLIANT=true -memory:4096 -smt2 -in -t:12000 Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation: TransformationType -> MAP_ELIMINATION_MONNIAUX Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder: Size of a code block -> SingleStatement Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation: Map elimination Monniaux: number of cells -> 2 [2019-05-23 10:02:44,879 INFO L146 ILogger]: Repository-Root is: /tmp [2019-05-23 10:02:44,892 INFO L146 ILogger]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-05-23 10:02:44,895 INFO L146 ILogger]: [Toolchain 1]: Toolchain selected. [2019-05-23 10:02:44,897 INFO L146 ILogger]: Initializing Boogie PL CUP Parser... [2019-05-23 10:02:44,897 INFO L146 ILogger]: Boogie PL CUP Parser initialized [2019-05-23 10:02:44,898 INFO L146 ILogger]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/toy/tooDifficultLoopInvariant/PointerIncrement-simplified02.bpl [2019-05-23 10:02:44,899 INFO L146 ILogger]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/toy/tooDifficultLoopInvariant/PointerIncrement-simplified02.bpl' [2019-05-23 10:02:44,932 INFO L146 ILogger]: ####################### [Toolchain 1] ####################### [2019-05-23 10:02:44,933 INFO L146 ILogger]: Walking toolchain with 5 elements. [2019-05-23 10:02:44,934 INFO L146 ILogger]: ------------------------Boogie Procedure Inliner---------------------------- [2019-05-23 10:02:44,934 INFO L146 ILogger]: Initializing Boogie Procedure Inliner... [2019-05-23 10:02:44,934 INFO L146 ILogger]: Boogie Procedure Inliner initialized [2019-05-23 10:02:44,950 INFO L146 ILogger]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 23.05 10:02:44" (1/1) ... [2019-05-23 10:02:44,961 INFO L146 ILogger]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 23.05 10:02:44" (1/1) ... [2019-05-23 10:02:44,967 WARN L146 ILogger]: Program contained no entry procedure! [2019-05-23 10:02:44,968 WARN L146 ILogger]: Missing entry procedures: [ULTIMATE.start] [2019-05-23 10:02:44,968 WARN L146 ILogger]: Fallback enabled. All procedures will be processed. [2019-05-23 10:02:44,970 INFO L146 ILogger]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-05-23 10:02:44,971 INFO L146 ILogger]: ------------------------Boogie Preprocessor---------------------------- [2019-05-23 10:02:44,971 INFO L146 ILogger]: Initializing Boogie Preprocessor... [2019-05-23 10:02:44,971 INFO L146 ILogger]: Boogie Preprocessor initialized [2019-05-23 10:02:44,982 INFO L146 ILogger]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 23.05 10:02:44" (1/1) ... [2019-05-23 10:02:44,982 INFO L146 ILogger]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 23.05 10:02:44" (1/1) ... [2019-05-23 10:02:44,983 INFO L146 ILogger]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 23.05 10:02:44" (1/1) ... [2019-05-23 10:02:44,983 INFO L146 ILogger]: Executing the observer StructExpander from plugin Boogie Preprocessor for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 23.05 10:02:44" (1/1) ... [2019-05-23 10:02:44,988 INFO L146 ILogger]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 23.05 10:02:44" (1/1) ... [2019-05-23 10:02:44,992 INFO L146 ILogger]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 23.05 10:02:44" (1/1) ... [2019-05-23 10:02:44,993 INFO L146 ILogger]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 23.05 10:02:44" (1/1) ... [2019-05-23 10:02:44,994 INFO L146 ILogger]: ------------------------ END Boogie Preprocessor---------------------------- [2019-05-23 10:02:44,995 INFO L146 ILogger]: ------------------------RCFGBuilder---------------------------- [2019-05-23 10:02:44,995 INFO L146 ILogger]: Initializing RCFGBuilder... [2019-05-23 10:02:44,995 INFO L146 ILogger]: RCFGBuilder initialized [2019-05-23 10:02:44,996 INFO L146 ILogger]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 23.05 10:02:44" (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:4096 -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:4096 -smt2 -in -t:12000 [2019-05-23 10:02:45,064 INFO L146 ILogger]: Found specification of procedure main [2019-05-23 10:02:45,064 INFO L146 ILogger]: Found implementation of procedure main [2019-05-23 10:02:45,065 INFO L146 ILogger]: Found specification of procedure ~malloc [2019-05-23 10:02:45,372 INFO L146 ILogger]: Using library mode [2019-05-23 10:02:45,372 INFO L146 ILogger]: Removed 1 assume(true) statements. [2019-05-23 10:02:45,374 INFO L146 ILogger]: Adding new model PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.05 10:02:45 BoogieIcfgContainer [2019-05-23 10:02:45,374 INFO L146 ILogger]: ------------------------ END RCFGBuilder---------------------------- [2019-05-23 10:02:45,375 INFO L146 ILogger]: ------------------------IcfgTransformer---------------------------- [2019-05-23 10:02:45,375 INFO L146 ILogger]: Initializing IcfgTransformer... [2019-05-23 10:02:45,376 INFO L146 ILogger]: IcfgTransformer initialized [2019-05-23 10:02:45,380 INFO L146 ILogger]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.05 10:02:45" (1/1) ... [2019-05-23 10:02:45,467 INFO L146 ILogger]: mainENTRY [2019-05-23 10:02:45,467 INFO L146 ILogger]: In Formula: (and (not (= 0 v_main_p.base_1)) (not (select |v_#valid_2| v_main_p.base_1)) (= (store |v_#length_2| v_main_p.base_1 400) |v_#length_1|) (= (store |v_#valid_2| v_main_p.base_1 true) |v_#valid_1|) (= 0 v_main_p.offset_1)) InVars {#valid=|v_#valid_2|, #length=|v_#length_2|} OutVars{main_p.offset=v_main_p.offset_1, #valid=|v_#valid_1|, #length=|v_#length_1|, main_p.base=v_main_p.base_1} AuxVars[] AssignedVars[main_p.offset, #valid, #length, main_p.base] [2019-05-23 10:02:45,469 INFO L146 ILogger]: Out Formula: (and (not (= 0 v_main_p.base_1)) (or |v_#valid_val_1_in_1| (not (= |v_#valid_idx_1_term_1| v_main_p.base_1))) (not |v_v_#valid_2_aux_1|) |v_#valid_idx_1_term_assigned_1| (= |v_#length_val_0_in_1| |v_#length_val_0_out_1|) (= |v_#valid_val_1_in_1| |v_#valid_val_1_out_1|) (or (= |v_#valid_idx_1_term_1| v_main_p.base_1) (not |v_#valid_idx_1_term_assigned_1|)) (or (not (= |v_#length_idx_0_term_1| v_main_p.base_1)) (= |v_#length_val_0_in_1| 400)) |v_#length_idx_0_term_assigned_1| (or |v_#valid_val_1_in_1| (not (= |v_#valid_idx_0_term_1| v_main_p.base_1))) (or (not (= |v_#valid_idx_0_term_1| v_main_p.base_1)) (= |v_#valid_val_1_in_1| |v_v_#valid_2_aux_1|)) (or (not (= |v_#length_idx_1_term_1| v_main_p.base_1)) (= |v_#length_val_0_in_1| 400)) (= |v_#valid_val_0_in_1| |v_#valid_val_0_out_1|) (or (= |v_#valid_val_0_in_1| |v_v_#valid_2_aux_1|) (not (= |v_#valid_idx_1_term_1| v_main_p.base_1))) (or (= |v_#valid_idx_0_term_1| v_main_p.base_1) (not |v_#valid_idx_0_term_assigned_1|)) (or (= |v_#length_idx_1_term_1| v_main_p.base_1) (not |v_#length_idx_1_term_assigned_1|)) (= |v_#length_val_1_in_1| |v_#length_val_1_out_1|) (or |v_#valid_val_0_in_1| (not (= |v_#valid_idx_0_term_1| v_main_p.base_1))) |v_#valid_idx_0_term_assigned_1| (or (not (= |v_#length_idx_1_term_1| v_main_p.base_1)) (= |v_#length_val_1_in_1| 400)) (or (not |v_#length_idx_0_term_assigned_1|) (= |v_#length_idx_0_term_1| v_main_p.base_1)) (or |v_#valid_val_0_in_1| (not (= |v_#valid_idx_1_term_1| v_main_p.base_1))) |v_#length_idx_1_term_assigned_1| (or (= |v_#valid_val_0_in_1| |v_v_#valid_2_aux_1|) (not (= |v_#valid_idx_0_term_1| v_main_p.base_1))) (or (not (= |v_#valid_idx_1_term_1| v_main_p.base_1)) (= |v_#valid_val_1_in_1| |v_v_#valid_2_aux_1|)) (or (not (= |v_#length_idx_0_term_1| v_main_p.base_1)) (= |v_#length_val_1_in_1| 400)) (= 0 v_main_p.offset_1)) InVars {#valid_idx_0_bool=|v_#valid_idx_0_term_assigned_1|, #length_idx_0_bool=|v_#length_idx_0_term_assigned_1|, #valid_idx_1_bool=|v_#valid_idx_1_term_assigned_1|, #length_idx_1_bool=|v_#length_idx_1_term_assigned_1|, #valid_idx_1=|v_#valid_idx_1_term_1|, #valid_idx_0=|v_#valid_idx_0_term_1|, #length_val_1=|v_#length_val_1_in_1|, #length_val_0=|v_#length_val_0_in_1|, #length_idx_0=|v_#length_idx_0_term_1|, #length_idx_1=|v_#length_idx_1_term_1|, #valid_val_0=|v_#valid_val_0_in_1|, #valid_val_1=|v_#valid_val_1_in_1|} OutVars{main_p.offset=v_main_p.offset_1, #valid_idx_0_bool=|v_#valid_idx_0_term_assigned_1|, #length_idx_0_bool=|v_#length_idx_0_term_assigned_1|, main_p.base=v_main_p.base_1, #valid_idx_1_bool=|v_#valid_idx_1_term_assigned_1|, #length_idx_1_bool=|v_#length_idx_1_term_assigned_1|, #valid_idx_1=|v_#valid_idx_1_term_1|, #valid_idx_0=|v_#valid_idx_0_term_1|, #length_val_1=|v_#length_val_1_out_1|, #length_val_0=|v_#length_val_0_out_1|, #length_idx_0=|v_#length_idx_0_term_1|, #length_idx_1=|v_#length_idx_1_term_1|, #valid_val_0=|v_#valid_val_0_out_1|, #valid_val_1=|v_#valid_val_1_out_1|} AuxVars[|v_v_#valid_2_aux_1|] AssignedVars[main_p.offset, #length_val_1, #length_val_0, #valid_val_0, main_p.base, #valid_val_1] [2019-05-23 10:02:45,469 INFO L146 ILogger]: L11 [2019-05-23 10:02:45,483 INFO L146 ILogger]: L17 [2019-05-23 10:02:45,483 INFO L146 ILogger]: In Formula: (not (<= (+ v_main_q.offset_3 4) (select |v_#length_3| v_main_q.base_2))) InVars {main_q.offset=v_main_q.offset_3, #length=|v_#length_3|, main_q.base=v_main_q.base_2} OutVars{main_q.offset=v_main_q.offset_3, #length=|v_#length_3|, main_q.base=v_main_q.base_2} AuxVars[] AssignedVars[] [2019-05-23 10:02:45,487 INFO L146 ILogger]: Out Formula: (and (or (= v_main_q.base_2 |v_#length_idx_1_term_2|) (not |v_#length_idx_1_term_assigned_1|)) (or (= |v_#length_val_1_in_2| |v_v_#length_3_aux_1|) (not (= v_main_q.base_2 |v_#length_idx_0_term_2|))) (or (not |v_#length_idx_0_term_assigned_1|) (= v_main_q.base_2 |v_#length_idx_0_term_2|)) |v_#length_idx_0_term_assigned_1| (not (<= (+ v_main_q.offset_3 4) |v_v_#length_3_aux_1|)) |v_#length_idx_1_term_assigned_1| (or (= |v_#length_val_0_in_2| |v_v_#length_3_aux_1|) (not (= v_main_q.base_2 |v_#length_idx_0_term_2|))) (or (not (= v_main_q.base_2 |v_#length_idx_1_term_2|)) (= |v_#length_val_0_in_2| |v_v_#length_3_aux_1|)) (or (not (= v_main_q.base_2 |v_#length_idx_1_term_2|)) (= |v_#length_val_1_in_2| |v_v_#length_3_aux_1|))) InVars {main_q.offset=v_main_q.offset_3, #length_idx_0_bool=|v_#length_idx_0_term_assigned_1|, main_q.base=v_main_q.base_2, #length_idx_1_bool=|v_#length_idx_1_term_assigned_1|, #length_val_1=|v_#length_val_1_in_2|, #length_val_0=|v_#length_val_0_in_2|, #length_idx_0=|v_#length_idx_0_term_2|, #length_idx_1=|v_#length_idx_1_term_2|} OutVars{main_q.offset=v_main_q.offset_3, #length_idx_0_bool=|v_#length_idx_0_term_assigned_1|, main_q.base=v_main_q.base_2, #length_idx_1_bool=|v_#length_idx_1_term_assigned_1|, #length_val_1=|v_#length_val_1_in_2|, #length_val_0=|v_#length_val_0_in_2|, #length_idx_0=|v_#length_idx_0_term_2|, #length_idx_1=|v_#length_idx_1_term_2|} AuxVars[|v_v_#length_3_aux_1|] AssignedVars[] [2019-05-23 10:02:45,493 INFO L146 ILogger]: mainErr0ASSERT_VIOLATIONASSERT [2019-05-23 10:02:45,497 INFO L146 ILogger]: L17 [2019-05-23 10:02:45,498 INFO L146 ILogger]: In Formula: (<= (+ v_main_q.offset_4 4) (select |v_#length_4| v_main_q.base_3)) InVars {main_q.offset=v_main_q.offset_4, #length=|v_#length_4|, main_q.base=v_main_q.base_3} OutVars{main_q.offset=v_main_q.offset_4, #length=|v_#length_4|, main_q.base=v_main_q.base_3} AuxVars[] AssignedVars[] [2019-05-23 10:02:45,498 INFO L146 ILogger]: Out Formula: (and (or (not |v_#length_idx_0_term_assigned_1|) (= v_main_q.base_3 |v_#length_idx_0_term_3|)) (or (= |v_#length_val_0_in_3| |v_v_#length_4_aux_1|) (not (= v_main_q.base_3 |v_#length_idx_1_term_3|))) |v_#length_idx_0_term_assigned_1| (or (= v_main_q.base_3 |v_#length_idx_1_term_3|) (not |v_#length_idx_1_term_assigned_1|)) (<= (+ v_main_q.offset_4 4) |v_v_#length_4_aux_1|) (or (= |v_#length_val_0_in_3| |v_v_#length_4_aux_1|) (not (= v_main_q.base_3 |v_#length_idx_0_term_3|))) (or (= |v_#length_val_1_in_3| |v_v_#length_4_aux_1|) (not (= v_main_q.base_3 |v_#length_idx_0_term_3|))) (or (= |v_#length_val_1_in_3| |v_v_#length_4_aux_1|) (not (= v_main_q.base_3 |v_#length_idx_1_term_3|))) |v_#length_idx_1_term_assigned_1|) InVars {main_q.offset=v_main_q.offset_4, #length_idx_0_bool=|v_#length_idx_0_term_assigned_1|, main_q.base=v_main_q.base_3, #length_idx_1_bool=|v_#length_idx_1_term_assigned_1|, #length_val_1=|v_#length_val_1_in_3|, #length_val_0=|v_#length_val_0_in_3|, #length_idx_0=|v_#length_idx_0_term_3|, #length_idx_1=|v_#length_idx_1_term_3|} OutVars{main_q.offset=v_main_q.offset_4, #length_idx_0_bool=|v_#length_idx_0_term_assigned_1|, main_q.base=v_main_q.base_3, #length_idx_1_bool=|v_#length_idx_1_term_assigned_1|, #length_val_1=|v_#length_val_1_in_3|, #length_val_0=|v_#length_val_0_in_3|, #length_idx_0=|v_#length_idx_0_term_3|, #length_idx_1=|v_#length_idx_1_term_3|} AuxVars[|v_v_#length_4_aux_1|] AssignedVars[] [2019-05-23 10:02:45,499 INFO L146 ILogger]: L16-1 [2019-05-23 10:02:45,521 INFO L146 ILogger]: Adding new model PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 23.05 10:02:45 BasicIcfg [2019-05-23 10:02:45,522 INFO L146 ILogger]: ------------------------ END IcfgTransformer---------------------------- [2019-05-23 10:02:45,523 INFO L146 ILogger]: ------------------------TraceAbstraction---------------------------- [2019-05-23 10:02:45,523 INFO L146 ILogger]: Initializing TraceAbstraction... [2019-05-23 10:02:45,532 INFO L146 ILogger]: TraceAbstraction initialized [2019-05-23 10:02:45,532 INFO L146 ILogger]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 23.05 10:02:44" (1/3) ... [2019-05-23 10:02:45,536 INFO L146 ILogger]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3709ca98 and model type PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.05 10:02:45, skipping insertion in model container [2019-05-23 10:02:45,536 INFO L146 ILogger]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.05 10:02:45" (2/3) ... [2019-05-23 10:02:45,537 INFO L146 ILogger]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3709ca98 and model type PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.05 10:02:45, skipping insertion in model container [2019-05-23 10:02:45,537 INFO L146 ILogger]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 23.05 10:02:45" (3/3) ... [2019-05-23 10:02:45,542 INFO L146 ILogger]: Analyzing ICFG PointerIncrement-simplified02.bplME [2019-05-23 10:02:45,553 INFO L146 ILogger]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2019-05-23 10:02:45,562 INFO L146 ILogger]: Appying trace abstraction to program that has 1 error locations. [2019-05-23 10:02:45,576 INFO L146 ILogger]: Starting to check reachability of 1 error locations. [2019-05-23 10:02:45,599 INFO L146 ILogger]: Using default assertion order modulation [2019-05-23 10:02:45,600 INFO L146 ILogger]: Interprodecural is true [2019-05-23 10:02:45,600 INFO L146 ILogger]: Hoare is false [2019-05-23 10:02:45,600 INFO L146 ILogger]: Compute interpolants for ForwardPredicates [2019-05-23 10:02:45,600 INFO L146 ILogger]: Backedges is STRAIGHT_LINE [2019-05-23 10:02:45,601 INFO L146 ILogger]: Determinization is PREDICATE_ABSTRACTION [2019-05-23 10:02:45,601 INFO L146 ILogger]: Difference is false [2019-05-23 10:02:45,601 INFO L146 ILogger]: Minimize is MINIMIZE_SEVPA [2019-05-23 10:02:45,601 INFO L146 ILogger]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-05-23 10:02:45,622 INFO L146 ILogger]: Start isEmpty. Operand 9 states. [2019-05-23 10:02:45,632 INFO L146 ILogger]: Finished isEmpty. Found accepting run of length 6 [2019-05-23 10:02:45,633 INFO L146 ILogger]: Found error trace [2019-05-23 10:02:45,634 INFO L146 ILogger]: trace histogram [1, 1, 1, 1, 1] [2019-05-23 10:02:45,636 INFO L146 ILogger]: === Iteration 1 === [mainErr0ASSERT_VIOLATIONASSERT]=== [2019-05-23 10:02:45,642 INFO L146 ILogger]: Initialized classic predicate unifier [2019-05-23 10:02:45,642 INFO L146 ILogger]: Analyzing trace with hash 46792790, now seen corresponding path program 1 times [2019-05-23 10:02:45,696 INFO L146 ILogger]: Using refinement strategy FixedRefinementStrategy [2019-05-23 10:02:45,749 INFO L146 ILogger]: Conjunction of SSA is unsat [2019-05-23 10:02:45,753 INFO L146 ILogger]: Trace formula consists of 47 conjuncts, 7 conjunts are in the unsatisfiable core [2019-05-23 10:02:45,757 INFO L146 ILogger]: Computing forward predicates... [2019-05-23 10:02:45,785 INFO L146 ILogger]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-23 10:02:45,788 INFO L146 ILogger]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-05-23 10:02:45,788 INFO L146 ILogger]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2019-05-23 10:02:45,792 INFO L146 ILogger]: Interpolant automaton has 2 states [2019-05-23 10:02:45,807 INFO L146 ILogger]: Constructing interpolant automaton starting with 2 interpolants. [2019-05-23 10:02:45,808 INFO L146 ILogger]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2019-05-23 10:02:45,810 INFO L146 ILogger]: Start difference. First operand 9 states. Second operand 2 states. [2019-05-23 10:02:45,819 INFO L146 ILogger]: Subtrahend was deterministic. Have not used determinization. [2019-05-23 10:02:45,820 INFO L146 ILogger]: Finished difference Result 1 states and 0 transitions. [2019-05-23 10:02:45,820 INFO L146 ILogger]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2019-05-23 10:02:45,821 INFO L146 ILogger]: Start accepts. Automaton has 2 states. Word has length 5 [2019-05-23 10:02:45,822 INFO L146 ILogger]: Finished accepts. some prefix is accepted. [2019-05-23 10:02:45,828 INFO L146 ILogger]: With dead ends: 1 [2019-05-23 10:02:45,828 INFO L146 ILogger]: Without dead ends: 0 [2019-05-23 10:02:45,831 INFO L146 ILogger]: 0 DeclaredPredicates, 4 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2019-05-23 10:02:45,856 INFO L146 ILogger]: Start minimizeSevpa. Operand 0 states. [2019-05-23 10:02:45,862 INFO L146 ILogger]: Finished minimizeSevpa. Reduced states from 0 to 0. [2019-05-23 10:02:45,864 INFO L146 ILogger]: Start removeUnreachable. Operand 0 states. [2019-05-23 10:02:45,864 INFO L146 ILogger]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2019-05-23 10:02:45,866 INFO L146 ILogger]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 5 [2019-05-23 10:02:45,866 INFO L146 ILogger]: Finished accepts. word is rejected. [2019-05-23 10:02:45,866 INFO L146 ILogger]: Abstraction has 0 states and 0 transitions. [2019-05-23 10:02:45,866 INFO L146 ILogger]: Interpolant automaton has 2 states. [2019-05-23 10:02:45,867 INFO L146 ILogger]: Start isEmpty. Operand 0 states and 0 transitions. [2019-05-23 10:02:45,867 INFO L146 ILogger]: Finished isEmpty. No accepting run. [2019-05-23 10:02:45,870 INFO L146 ILogger]: Did not count any witness invariants because Icfg is not BoogieIcfg [2019-05-23 10:02:45,872 INFO L146 ILogger]: Adding new model PointerIncrement-simplified02.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.05 10:02:45 BasicIcfg [2019-05-23 10:02:45,872 INFO L146 ILogger]: ------------------------ END TraceAbstraction---------------------------- [2019-05-23 10:02:45,875 INFO L146 ILogger]: Toolchain (without parser) took 940.67 ms. Allocated memory is still 138.9 MB. Free memory was 108.6 MB in the beginning and 73.2 MB in the end (delta: 35.4 MB). Peak memory consumption was 35.4 MB. Max. memory is 7.1 GB. [2019-05-23 10:02:45,876 INFO L146 ILogger]: Boogie PL CUP Parser took 0.28 ms. Allocated memory is still 138.9 MB. Free memory was 110.0 MB in the beginning and 109.8 MB in the end (delta: 209.7 kB). Peak memory consumption was 209.7 kB. Max. memory is 7.1 GB. [2019-05-23 10:02:45,878 INFO L146 ILogger]: Boogie Procedure Inliner took 36.52 ms. Allocated memory is still 138.9 MB. Free memory was 108.6 MB in the beginning and 106.7 MB in the end (delta: 1.9 MB). Peak memory consumption was 1.9 MB. Max. memory is 7.1 GB. [2019-05-23 10:02:45,879 INFO L146 ILogger]: Boogie Preprocessor took 23.81 ms. Allocated memory is still 138.9 MB. Free memory was 106.7 MB in the beginning and 105.4 MB in the end (delta: 1.3 MB). Peak memory consumption was 1.3 MB. Max. memory is 7.1 GB. [2019-05-23 10:02:45,880 INFO L146 ILogger]: RCFGBuilder took 379.43 ms. Allocated memory is still 138.9 MB. Free memory was 105.4 MB in the beginning and 95.4 MB in the end (delta: 10.0 MB). Peak memory consumption was 10.0 MB. Max. memory is 7.1 GB. [2019-05-23 10:02:45,881 INFO L146 ILogger]: IcfgTransformer took 147.06 ms. Allocated memory is still 138.9 MB. Free memory was 95.4 MB in the beginning and 90.7 MB in the end (delta: 4.7 MB). Peak memory consumption was 4.7 MB. Max. memory is 7.1 GB. [2019-05-23 10:02:45,882 INFO L146 ILogger]: TraceAbstraction took 349.60 ms. Allocated memory is still 138.9 MB. Free memory was 90.5 MB in the beginning and 73.2 MB in the end (delta: 17.3 MB). Peak memory consumption was 17.3 MB. Max. memory is 7.1 GB. [2019-05-23 10:02:45,887 INFO L146 ILogger]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.28 ms. Allocated memory is still 138.9 MB. Free memory was 110.0 MB in the beginning and 109.8 MB in the end (delta: 209.7 kB). Peak memory consumption was 209.7 kB. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 36.52 ms. Allocated memory is still 138.9 MB. Free memory was 108.6 MB in the beginning and 106.7 MB in the end (delta: 1.9 MB). Peak memory consumption was 1.9 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 23.81 ms. Allocated memory is still 138.9 MB. Free memory was 106.7 MB in the beginning and 105.4 MB in the end (delta: 1.3 MB). Peak memory consumption was 1.3 MB. Max. memory is 7.1 GB. * RCFGBuilder took 379.43 ms. Allocated memory is still 138.9 MB. Free memory was 105.4 MB in the beginning and 95.4 MB in the end (delta: 10.0 MB). Peak memory consumption was 10.0 MB. Max. memory is 7.1 GB. * IcfgTransformer took 147.06 ms. Allocated memory is still 138.9 MB. Free memory was 95.4 MB in the beginning and 90.7 MB in the end (delta: 4.7 MB). Peak memory consumption was 4.7 MB. Max. memory is 7.1 GB. * TraceAbstraction took 349.60 ms. Allocated memory is still 138.9 MB. Free memory was 90.5 MB in the beginning and 73.2 MB in the end (delta: 17.3 MB). Peak memory consumption was 17.3 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 17]: assertion always holds For all program executions holds that assertion always holds at this location - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - StatisticsResult: Ultimate Automizer benchmark data CFG has 1 procedures, 9 locations, 1 error locations. SAFE Result, 0.2s OverallTime, 1 OverallIterations, 1 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 0 SDtfs, 0 SDslu, 0 SDs, 0 SdLazy, 0 SolverSat, 0 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.0s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 4 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=9occurred in iteration=0, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s AbstIntTime, 0 AbstIntIterations, 0 AbstIntStrong, NaN AbsIntWeakeningRatio, NaN AbsIntAvgWeakeningVarsNumRemoved, NaN AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.0s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 5 NumberOfCodeBlocks, 5 NumberOfCodeBlocksAsserted, 1 NumberOfCheckSat, 4 ConstructedInterpolants, 0 QuantifiedInterpolants, 16 SizeOfPredicates, 5 NumberOfNonLiveVariables, 47 ConjunctsInSsa, 7 ConjunctsInUnsatCore, 1 InterpolantComputations, 1 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be correct! Received shutdown request...