java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerBplInlineTransformed.xml --icfgtransformation.transformationtype MAP_ELIMINATION_MONNIAUX --rcfgbuilder.size.of.a.code.block SingleStatement -i ../../../trunk/examples/programs/20170304-DifficultPathPrograms/n.c11.i_3.bpl -------------------------------------------------------------------------------- This is Ultimate 0.1.24-1c58c86 [2019-05-15 10:43:05,603 INFO L170 SettingsManager]: Resetting all preferences to default values... [2019-05-15 10:43:05,605 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2019-05-15 10:43:05,618 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2019-05-15 10:43:05,618 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2019-05-15 10:43:05,619 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2019-05-15 10:43:05,620 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2019-05-15 10:43:05,622 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2019-05-15 10:43:05,624 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2019-05-15 10:43:05,625 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2019-05-15 10:43:05,626 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2019-05-15 10:43:05,626 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2019-05-15 10:43:05,627 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2019-05-15 10:43:05,628 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2019-05-15 10:43:05,629 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2019-05-15 10:43:05,630 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2019-05-15 10:43:05,631 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2019-05-15 10:43:05,633 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2019-05-15 10:43:05,635 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2019-05-15 10:43:05,638 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2019-05-15 10:43:05,639 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2019-05-15 10:43:05,640 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2019-05-15 10:43:05,643 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2019-05-15 10:43:05,643 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2019-05-15 10:43:05,644 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2019-05-15 10:43:05,645 INFO L174 SettingsManager]: Resetting IcfgToChc preferences to default values [2019-05-15 10:43:05,645 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2019-05-15 10:43:05,646 INFO L177 SettingsManager]: ReqToTest provides no preferences, ignoring... [2019-05-15 10:43:05,647 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2019-05-15 10:43:05,648 INFO L174 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2019-05-15 10:43:05,648 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2019-05-15 10:43:05,649 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2019-05-15 10:43:05,651 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2019-05-15 10:43:05,651 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2019-05-15 10:43:05,652 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2019-05-15 10:43:05,652 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2019-05-15 10:43:05,652 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2019-05-15 10:43:05,654 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2019-05-15 10:43:05,654 INFO L181 SettingsManager]: Finished resetting all preferences to default values... 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 [2019-05-15 10:43:05,707 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2019-05-15 10:43:05,720 INFO L259 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2019-05-15 10:43:05,725 INFO L215 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2019-05-15 10:43:05,726 INFO L271 PluginConnector]: Initializing Boogie PL CUP Parser... [2019-05-15 10:43:05,727 INFO L275 PluginConnector]: Boogie PL CUP Parser initialized [2019-05-15 10:43:05,728 INFO L430 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/20170304-DifficultPathPrograms/n.c11.i_3.bpl [2019-05-15 10:43:05,728 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/programs/20170304-DifficultPathPrograms/n.c11.i_3.bpl' [2019-05-15 10:43:05,763 INFO L297 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2019-05-15 10:43:05,764 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2019-05-15 10:43:05,765 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2019-05-15 10:43:05,765 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2019-05-15 10:43:05,765 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2019-05-15 10:43:05,781 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:43:05" (1/1) ... [2019-05-15 10:43:05,791 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:43:05" (1/1) ... [2019-05-15 10:43:05,799 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2019-05-15 10:43:05,800 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2019-05-15 10:43:05,800 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2019-05-15 10:43:05,800 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2019-05-15 10:43:05,810 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:43:05" (1/1) ... [2019-05-15 10:43:05,811 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:43:05" (1/1) ... [2019-05-15 10:43:05,812 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:43:05" (1/1) ... [2019-05-15 10:43:05,812 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:43:05" (1/1) ... [2019-05-15 10:43:05,815 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:43:05" (1/1) ... [2019-05-15 10:43:05,817 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:43:05" (1/1) ... [2019-05-15 10:43:05,818 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:43:05" (1/1) ... [2019-05-15 10:43:05,819 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2019-05-15 10:43:05,820 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2019-05-15 10:43:05,820 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2019-05-15 10:43:05,820 INFO L275 PluginConnector]: RCFGBuilder initialized [2019-05-15 10:43:05,821 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:43:05" (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:43:05,876 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2019-05-15 10:43:05,877 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2019-05-15 10:43:06,464 INFO L278 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2019-05-15 10:43:06,464 INFO L283 CfgBuilder]: Removed 1 assume(true) statements. [2019-05-15 10:43:06,465 INFO L202 PluginConnector]: Adding new model n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.05 10:43:06 BoogieIcfgContainer [2019-05-15 10:43:06,466 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2019-05-15 10:43:06,466 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2019-05-15 10:43:06,466 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2019-05-15 10:43:06,467 INFO L275 PluginConnector]: IcfgTransformer initialized [2019-05-15 10:43:06,471 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.05 10:43:06" (1/1) ... [2019-05-15 10:43:06,675 INFO L632 onniauxMapEliminator]: L36 [2019-05-15 10:43:06,675 INFO L633 onniauxMapEliminator]: In Formula: (= v_ULTIMATE.start_main_~a~5_3 (store v_ULTIMATE.start_main_~a~5_4 (mod v_ULTIMATE.start_main_~len~5_5 4294967296) 0)) InVars {ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_4, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_3, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5] [2019-05-15 10:43:06,676 INFO L634 onniauxMapEliminator]: Out Formula: (and v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1 (or (not v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1) (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1)) (= v_ULTIMATE.start_main_~a~5_val_0_out_1 v_ULTIMATE.start_main_~a~5_val_0_in_1) (or (= v_ULTIMATE.start_main_~a~5_val_0_in_1 0) (not (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1)))) InVars {ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_in_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_out_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5_val_0] [2019-05-15 10:43:06,676 INFO L635 onniauxMapEliminator]: L37 [2019-05-15 10:43:06,807 INFO L202 PluginConnector]: Adding new model n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 15.05 10:43:06 BasicIcfg [2019-05-15 10:43:06,807 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2019-05-15 10:43:06,809 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2019-05-15 10:43:06,809 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2019-05-15 10:43:06,812 INFO L275 PluginConnector]: TraceAbstraction initialized [2019-05-15 10:43:06,812 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 15.05 10:43:05" (1/3) ... [2019-05-15 10:43:06,814 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@53737bfc and model type n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.05 10:43:06, skipping insertion in model container [2019-05-15 10:43:06,814 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.05 10:43:06" (2/3) ... [2019-05-15 10:43:06,814 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@53737bfc and model type n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 15.05 10:43:06, skipping insertion in model container [2019-05-15 10:43:06,814 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 15.05 10:43:06" (3/3) ... [2019-05-15 10:43:06,816 INFO L109 eAbstractionObserver]: Analyzing ICFG n.c11.i_3.bplME [2019-05-15 10:43:06,826 INFO L152 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2019-05-15 10:43:06,834 INFO L164 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2019-05-15 10:43:06,851 INFO L252 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2019-05-15 10:43:06,872 INFO L127 ementStrategyFactory]: Using default assertion order modulation [2019-05-15 10:43:06,873 INFO L377 AbstractCegarLoop]: Interprodecural is true [2019-05-15 10:43:06,873 INFO L378 AbstractCegarLoop]: Hoare is false [2019-05-15 10:43:06,873 INFO L379 AbstractCegarLoop]: Compute interpolants for ForwardPredicates [2019-05-15 10:43:06,873 INFO L380 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2019-05-15 10:43:06,874 INFO L381 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2019-05-15 10:43:06,874 INFO L382 AbstractCegarLoop]: Difference is false [2019-05-15 10:43:06,874 INFO L383 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2019-05-15 10:43:06,874 INFO L388 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2019-05-15 10:43:06,890 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states. [2019-05-15 10:43:06,899 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2019-05-15 10:43:06,899 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:43:06,900 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:43:06,903 INFO L418 AbstractCegarLoop]: === Iteration 1 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:43:06,909 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:43:06,909 INFO L82 PathProgramCache]: Analyzing trace with hash 1215222149, now seen corresponding path program 1 times [2019-05-15 10:43:06,955 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:43:06,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:43:07,002 INFO L256 TraceCheckSpWp]: Trace formula consists of 20 conjuncts, 6 conjunts are in the unsatisfiable core [2019-05-15 10:43:07,021 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:43:07,026 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:43:07,249 INFO L273 TraceCheckUtils]: 0: Hoare triple {25#true} [28] ULTIMATE.startENTRY-->L13: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res=|v_ULTIMATE.start_main_#res_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res] {25#true} is VALID [2019-05-15 10:43:07,250 INFO L273 TraceCheckUtils]: 1: Hoare triple {25#true} [29] L13-->L14: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_1|, ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_1, ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_1|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_1, ULTIMATE.start_main_~i~5=v_ULTIMATE.start_main_~i~5_1} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0, ULTIMATE.start_main_~a~5, ULTIMATE.start_main_#t~post1, ULTIMATE.start_main_~len~5, ULTIMATE.start_main_~i~5] {25#true} is VALID [2019-05-15 10:43:07,250 INFO L273 TraceCheckUtils]: 2: Hoare triple {25#true} [30] L14-->L15: Formula: true InVars {} OutVars{ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5] {25#true} is VALID [2019-05-15 10:43:07,252 INFO L273 TraceCheckUtils]: 3: Hoare triple {25#true} [31] L15-->L16: Formula: (= v_ULTIMATE.start_main_~len~5_2 0) InVars {} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {39#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:07,253 INFO L273 TraceCheckUtils]: 4: Hoare triple {39#(= 0 ULTIMATE.start_main_~len~5)} [32] L16-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~5=v_ULTIMATE.start_main_~i~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~5] {39#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:07,253 INFO L273 TraceCheckUtils]: 5: Hoare triple {39#(= 0 ULTIMATE.start_main_~len~5)} [33] L40-->L25: Formula: (= 0 (mod |v_ULTIMATE.start_main_#t~nondet0_2| 256)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_2|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_2|} AuxVars[] AssignedVars[] {39#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:07,257 INFO L273 TraceCheckUtils]: 6: Hoare triple {39#(= 0 ULTIMATE.start_main_~len~5)} [35] L25-->L26: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {39#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:07,258 INFO L273 TraceCheckUtils]: 7: Hoare triple {39#(= 0 ULTIMATE.start_main_~len~5)} [37] L26-->L27: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_#in~cond_1| (ite (let ((.cse0 (mod v_ULTIMATE.start_main_~len~5_3 4294967296))) (and (< .cse0 5) (<= 0 .cse0))) 1 0)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_3} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_1|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_3} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond] {52#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} is VALID [2019-05-15 10:43:07,259 INFO L273 TraceCheckUtils]: 8: Hoare triple {52#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} [39] L27-->L28: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond] {52#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} is VALID [2019-05-15 10:43:07,260 INFO L273 TraceCheckUtils]: 9: Hoare triple {52#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} [41] L28-->L29: Formula: (= v_ULTIMATE.start___VERIFIER_assert_~cond_2 |v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_2, ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond] {59#(<= 1 ULTIMATE.start___VERIFIER_assert_~cond)} is VALID [2019-05-15 10:43:07,269 INFO L273 TraceCheckUtils]: 10: Hoare triple {59#(<= 1 ULTIMATE.start___VERIFIER_assert_~cond)} [43] L29-->L30: Formula: (= 0 v_ULTIMATE.start___VERIFIER_assert_~cond_3) InVars {ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_3} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {26#false} is VALID [2019-05-15 10:43:07,270 INFO L273 TraceCheckUtils]: 11: Hoare triple {26#false} [45] L30-->L31: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26#false} is VALID [2019-05-15 10:43:07,270 INFO L273 TraceCheckUtils]: 12: Hoare triple {26#false} [47] L31-->ULTIMATE.startErr0ASSERT_VIOLATIONASSERT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26#false} is VALID [2019-05-15 10:43:07,274 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:43:07,277 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2019-05-15 10:43:07,277 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2019-05-15 10:43:07,283 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 13 [2019-05-15 10:43:07,285 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:43:07,288 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2019-05-15 10:43:07,393 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:43:07,394 INFO L454 AbstractCegarLoop]: Interpolant automaton has 5 states [2019-05-15 10:43:07,404 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2019-05-15 10:43:07,405 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2019-05-15 10:43:07,408 INFO L87 Difference]: Start difference. First operand 22 states. Second operand 5 states. [2019-05-15 10:43:07,903 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:07,903 INFO L93 Difference]: Finished difference Result 31 states and 31 transitions. [2019-05-15 10:43:07,903 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2019-05-15 10:43:07,904 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 13 [2019-05-15 10:43:07,904 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:43:07,905 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2019-05-15 10:43:07,912 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 33 transitions. [2019-05-15 10:43:07,912 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2019-05-15 10:43:07,916 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 33 transitions. [2019-05-15 10:43:07,917 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 33 transitions. [2019-05-15 10:43:07,977 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:43:07,988 INFO L225 Difference]: With dead ends: 31 [2019-05-15 10:43:07,988 INFO L226 Difference]: Without dead ends: 26 [2019-05-15 10:43:07,990 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 14 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2019-05-15 10:43:08,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2019-05-15 10:43:08,016 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 21. [2019-05-15 10:43:08,016 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:43:08,017 INFO L82 GeneralOperation]: Start isEquivalent. First operand 26 states. Second operand 21 states. [2019-05-15 10:43:08,018 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand 21 states. [2019-05-15 10:43:08,018 INFO L87 Difference]: Start difference. First operand 26 states. Second operand 21 states. [2019-05-15 10:43:08,023 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:08,024 INFO L93 Difference]: Finished difference Result 26 states and 26 transitions. [2019-05-15 10:43:08,024 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 26 transitions. [2019-05-15 10:43:08,024 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:43:08,025 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:43:08,025 INFO L74 IsIncluded]: Start isIncluded. First operand 21 states. Second operand 26 states. [2019-05-15 10:43:08,025 INFO L87 Difference]: Start difference. First operand 21 states. Second operand 26 states. [2019-05-15 10:43:08,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:08,029 INFO L93 Difference]: Finished difference Result 26 states and 26 transitions. [2019-05-15 10:43:08,029 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 26 transitions. [2019-05-15 10:43:08,029 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:43:08,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:43:08,030 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:43:08,030 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:43:08,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2019-05-15 10:43:08,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 21 transitions. [2019-05-15 10:43:08,034 INFO L78 Accepts]: Start accepts. Automaton has 21 states and 21 transitions. Word has length 13 [2019-05-15 10:43:08,034 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:43:08,034 INFO L475 AbstractCegarLoop]: Abstraction has 21 states and 21 transitions. [2019-05-15 10:43:08,034 INFO L476 AbstractCegarLoop]: Interpolant automaton has 5 states. [2019-05-15 10:43:08,036 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 21 transitions. [2019-05-15 10:43:08,037 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2019-05-15 10:43:08,037 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:43:08,037 INFO L399 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:43:08,037 INFO L418 AbstractCegarLoop]: === Iteration 2 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:43:08,038 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:43:08,038 INFO L82 PathProgramCache]: Analyzing trace with hash -346643181, now seen corresponding path program 1 times [2019-05-15 10:43:08,039 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:43:08,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:43:08,061 INFO L256 TraceCheckSpWp]: Trace formula consists of 33 conjuncts, 10 conjunts are in the unsatisfiable core [2019-05-15 10:43:08,085 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:43:08,086 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:43:08,521 INFO L273 TraceCheckUtils]: 0: Hoare triple {176#true} [28] ULTIMATE.startENTRY-->L13: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res=|v_ULTIMATE.start_main_#res_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res] {176#true} is VALID [2019-05-15 10:43:08,522 INFO L273 TraceCheckUtils]: 1: Hoare triple {176#true} [29] L13-->L14: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_1|, ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_1, ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_1|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_1, ULTIMATE.start_main_~i~5=v_ULTIMATE.start_main_~i~5_1} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0, ULTIMATE.start_main_~a~5, ULTIMATE.start_main_#t~post1, ULTIMATE.start_main_~len~5, ULTIMATE.start_main_~i~5] {176#true} is VALID [2019-05-15 10:43:08,522 INFO L273 TraceCheckUtils]: 2: Hoare triple {176#true} [30] L14-->L15: Formula: true InVars {} OutVars{ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5] {176#true} is VALID [2019-05-15 10:43:08,542 INFO L273 TraceCheckUtils]: 3: Hoare triple {176#true} [31] L15-->L16: Formula: (= v_ULTIMATE.start_main_~len~5_2 0) InVars {} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {190#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:08,544 INFO L273 TraceCheckUtils]: 4: Hoare triple {190#(= 0 ULTIMATE.start_main_~len~5)} [32] L16-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~5=v_ULTIMATE.start_main_~i~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~5] {190#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:08,544 INFO L273 TraceCheckUtils]: 5: Hoare triple {190#(= 0 ULTIMATE.start_main_~len~5)} [34] L40-->L34: Formula: (not (= (mod |v_ULTIMATE.start_main_#t~nondet0_4| 256) 0)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} AuxVars[] AssignedVars[] {190#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:08,546 INFO L273 TraceCheckUtils]: 6: Hoare triple {190#(= 0 ULTIMATE.start_main_~len~5)} [36] L34-->L35: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {190#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:08,547 INFO L273 TraceCheckUtils]: 7: Hoare triple {190#(= 0 ULTIMATE.start_main_~len~5)} [38] L35-->L36: Formula: (not (= (mod v_ULTIMATE.start_main_~len~5_4 4294967296) 4)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} AuxVars[] AssignedVars[] {190#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:08,547 INFO L273 TraceCheckUtils]: 8: Hoare triple {190#(= 0 ULTIMATE.start_main_~len~5)} [40] L36-->L37: Formula: (let ((.cse0 (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1))) (and v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1 (or (not v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1) .cse0) (= v_ULTIMATE.start_main_~a~5_val_0_out_1 v_ULTIMATE.start_main_~a~5_val_0_in_1) (or (= v_ULTIMATE.start_main_~a~5_val_0_in_1 0) (not .cse0)))) InVars {ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_in_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_out_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5_val_0] {190#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:08,549 INFO L273 TraceCheckUtils]: 9: Hoare triple {190#(= 0 ULTIMATE.start_main_~len~5)} [42] L37-->L38: Formula: (= |v_ULTIMATE.start_main_#t~post1_2| v_ULTIMATE.start_main_~len~5_6) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_2|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {209#(= |ULTIMATE.start_main_#t~post1| 0)} is VALID [2019-05-15 10:43:08,549 INFO L273 TraceCheckUtils]: 10: Hoare triple {209#(= |ULTIMATE.start_main_#t~post1| 0)} [44] L38-->L39: Formula: (= v_ULTIMATE.start_main_~len~5_7 (+ |v_ULTIMATE.start_main_#t~post1_3| 1)) InVars {ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_7} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {213#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:08,551 INFO L273 TraceCheckUtils]: 11: Hoare triple {213#(= 1 ULTIMATE.start_main_~len~5)} [46] L39-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {213#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:08,552 INFO L273 TraceCheckUtils]: 12: Hoare triple {213#(= 1 ULTIMATE.start_main_~len~5)} [33] L40-->L25: Formula: (= 0 (mod |v_ULTIMATE.start_main_#t~nondet0_2| 256)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_2|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_2|} AuxVars[] AssignedVars[] {213#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:08,553 INFO L273 TraceCheckUtils]: 13: Hoare triple {213#(= 1 ULTIMATE.start_main_~len~5)} [35] L25-->L26: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {213#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:08,572 INFO L273 TraceCheckUtils]: 14: Hoare triple {213#(= 1 ULTIMATE.start_main_~len~5)} [37] L26-->L27: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_#in~cond_1| (ite (let ((.cse0 (mod v_ULTIMATE.start_main_~len~5_3 4294967296))) (and (< .cse0 5) (<= 0 .cse0))) 1 0)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_3} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_1|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_3} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond] {226#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} is VALID [2019-05-15 10:43:08,588 INFO L273 TraceCheckUtils]: 15: Hoare triple {226#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} [39] L27-->L28: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond] {226#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} is VALID [2019-05-15 10:43:08,604 INFO L273 TraceCheckUtils]: 16: Hoare triple {226#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} [41] L28-->L29: Formula: (= v_ULTIMATE.start___VERIFIER_assert_~cond_2 |v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_2, ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond] {233#(<= 1 ULTIMATE.start___VERIFIER_assert_~cond)} is VALID [2019-05-15 10:43:08,618 INFO L273 TraceCheckUtils]: 17: Hoare triple {233#(<= 1 ULTIMATE.start___VERIFIER_assert_~cond)} [43] L29-->L30: Formula: (= 0 v_ULTIMATE.start___VERIFIER_assert_~cond_3) InVars {ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_3} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {177#false} is VALID [2019-05-15 10:43:08,618 INFO L273 TraceCheckUtils]: 18: Hoare triple {177#false} [45] L30-->L31: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {177#false} is VALID [2019-05-15 10:43:08,619 INFO L273 TraceCheckUtils]: 19: Hoare triple {177#false} [47] L31-->ULTIMATE.startErr0ASSERT_VIOLATIONASSERT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {177#false} is VALID [2019-05-15 10:43:08,623 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:43:08,623 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:43:08,624 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2019-05-15 10:43:08,629 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 20 [2019-05-15 10:43:08,629 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:43:08,629 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2019-05-15 10:43:08,707 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:43:08,707 INFO L454 AbstractCegarLoop]: Interpolant automaton has 7 states [2019-05-15 10:43:08,708 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2019-05-15 10:43:08,708 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2019-05-15 10:43:08,709 INFO L87 Difference]: Start difference. First operand 21 states and 21 transitions. Second operand 7 states. [2019-05-15 10:43:09,136 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:09,136 INFO L93 Difference]: Finished difference Result 38 states and 38 transitions. [2019-05-15 10:43:09,136 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2019-05-15 10:43:09,137 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 20 [2019-05-15 10:43:09,137 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:43:09,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2019-05-15 10:43:09,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 39 transitions. [2019-05-15 10:43:09,140 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2019-05-15 10:43:09,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 39 transitions. [2019-05-15 10:43:09,143 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 39 transitions. [2019-05-15 10:43:09,207 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:43:09,209 INFO L225 Difference]: With dead ends: 38 [2019-05-15 10:43:09,209 INFO L226 Difference]: Without dead ends: 33 [2019-05-15 10:43:09,210 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=29, Invalid=81, Unknown=0, NotChecked=0, Total=110 [2019-05-15 10:43:09,211 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2019-05-15 10:43:09,214 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 28. [2019-05-15 10:43:09,214 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:43:09,214 INFO L82 GeneralOperation]: Start isEquivalent. First operand 33 states. Second operand 28 states. [2019-05-15 10:43:09,214 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand 28 states. [2019-05-15 10:43:09,214 INFO L87 Difference]: Start difference. First operand 33 states. Second operand 28 states. [2019-05-15 10:43:09,217 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:09,218 INFO L93 Difference]: Finished difference Result 33 states and 33 transitions. [2019-05-15 10:43:09,218 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 33 transitions. [2019-05-15 10:43:09,219 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:43:09,219 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:43:09,219 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand 33 states. [2019-05-15 10:43:09,219 INFO L87 Difference]: Start difference. First operand 28 states. Second operand 33 states. [2019-05-15 10:43:09,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:09,222 INFO L93 Difference]: Finished difference Result 33 states and 33 transitions. [2019-05-15 10:43:09,222 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 33 transitions. [2019-05-15 10:43:09,223 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:43:09,223 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:43:09,223 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:43:09,223 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:43:09,224 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2019-05-15 10:43:09,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 28 transitions. [2019-05-15 10:43:09,226 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 28 transitions. Word has length 20 [2019-05-15 10:43:09,226 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:43:09,226 INFO L475 AbstractCegarLoop]: Abstraction has 28 states and 28 transitions. [2019-05-15 10:43:09,226 INFO L476 AbstractCegarLoop]: Interpolant automaton has 7 states. [2019-05-15 10:43:09,227 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 28 transitions. [2019-05-15 10:43:09,227 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2019-05-15 10:43:09,228 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:43:09,228 INFO L399 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:43:09,228 INFO L418 AbstractCegarLoop]: === Iteration 3 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:43:09,228 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:43:09,229 INFO L82 PathProgramCache]: Analyzing trace with hash -1116580411, now seen corresponding path program 2 times [2019-05-15 10:43:09,230 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:43:09,257 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:43:09,261 INFO L256 TraceCheckSpWp]: Trace formula consists of 46 conjuncts, 14 conjunts are in the unsatisfiable core [2019-05-15 10:43:09,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:43:09,283 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:43:09,544 INFO L273 TraceCheckUtils]: 0: Hoare triple {382#true} [28] ULTIMATE.startENTRY-->L13: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res=|v_ULTIMATE.start_main_#res_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res] {382#true} is VALID [2019-05-15 10:43:09,544 INFO L273 TraceCheckUtils]: 1: Hoare triple {382#true} [29] L13-->L14: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_1|, ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_1, ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_1|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_1, ULTIMATE.start_main_~i~5=v_ULTIMATE.start_main_~i~5_1} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0, ULTIMATE.start_main_~a~5, ULTIMATE.start_main_#t~post1, ULTIMATE.start_main_~len~5, ULTIMATE.start_main_~i~5] {382#true} is VALID [2019-05-15 10:43:09,545 INFO L273 TraceCheckUtils]: 2: Hoare triple {382#true} [30] L14-->L15: Formula: true InVars {} OutVars{ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5] {382#true} is VALID [2019-05-15 10:43:09,546 INFO L273 TraceCheckUtils]: 3: Hoare triple {382#true} [31] L15-->L16: Formula: (= v_ULTIMATE.start_main_~len~5_2 0) InVars {} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {396#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,546 INFO L273 TraceCheckUtils]: 4: Hoare triple {396#(= 0 ULTIMATE.start_main_~len~5)} [32] L16-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~5=v_ULTIMATE.start_main_~i~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~5] {396#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,547 INFO L273 TraceCheckUtils]: 5: Hoare triple {396#(= 0 ULTIMATE.start_main_~len~5)} [34] L40-->L34: Formula: (not (= (mod |v_ULTIMATE.start_main_#t~nondet0_4| 256) 0)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} AuxVars[] AssignedVars[] {396#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,547 INFO L273 TraceCheckUtils]: 6: Hoare triple {396#(= 0 ULTIMATE.start_main_~len~5)} [36] L34-->L35: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {396#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,547 INFO L273 TraceCheckUtils]: 7: Hoare triple {396#(= 0 ULTIMATE.start_main_~len~5)} [38] L35-->L36: Formula: (not (= (mod v_ULTIMATE.start_main_~len~5_4 4294967296) 4)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} AuxVars[] AssignedVars[] {396#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,548 INFO L273 TraceCheckUtils]: 8: Hoare triple {396#(= 0 ULTIMATE.start_main_~len~5)} [40] L36-->L37: Formula: (let ((.cse0 (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1))) (and v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1 (or (not v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1) .cse0) (= v_ULTIMATE.start_main_~a~5_val_0_out_1 v_ULTIMATE.start_main_~a~5_val_0_in_1) (or (= v_ULTIMATE.start_main_~a~5_val_0_in_1 0) (not .cse0)))) InVars {ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_in_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_out_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5_val_0] {396#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,549 INFO L273 TraceCheckUtils]: 9: Hoare triple {396#(= 0 ULTIMATE.start_main_~len~5)} [42] L37-->L38: Formula: (= |v_ULTIMATE.start_main_#t~post1_2| v_ULTIMATE.start_main_~len~5_6) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_2|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {415#(= |ULTIMATE.start_main_#t~post1| 0)} is VALID [2019-05-15 10:43:09,550 INFO L273 TraceCheckUtils]: 10: Hoare triple {415#(= |ULTIMATE.start_main_#t~post1| 0)} [44] L38-->L39: Formula: (= v_ULTIMATE.start_main_~len~5_7 (+ |v_ULTIMATE.start_main_#t~post1_3| 1)) InVars {ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_7} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {419#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,551 INFO L273 TraceCheckUtils]: 11: Hoare triple {419#(= 1 ULTIMATE.start_main_~len~5)} [46] L39-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {419#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,551 INFO L273 TraceCheckUtils]: 12: Hoare triple {419#(= 1 ULTIMATE.start_main_~len~5)} [34] L40-->L34: Formula: (not (= (mod |v_ULTIMATE.start_main_#t~nondet0_4| 256) 0)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} AuxVars[] AssignedVars[] {419#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,553 INFO L273 TraceCheckUtils]: 13: Hoare triple {419#(= 1 ULTIMATE.start_main_~len~5)} [36] L34-->L35: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {419#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,553 INFO L273 TraceCheckUtils]: 14: Hoare triple {419#(= 1 ULTIMATE.start_main_~len~5)} [38] L35-->L36: Formula: (not (= (mod v_ULTIMATE.start_main_~len~5_4 4294967296) 4)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} AuxVars[] AssignedVars[] {419#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,555 INFO L273 TraceCheckUtils]: 15: Hoare triple {419#(= 1 ULTIMATE.start_main_~len~5)} [40] L36-->L37: Formula: (let ((.cse0 (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1))) (and v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1 (or (not v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1) .cse0) (= v_ULTIMATE.start_main_~a~5_val_0_out_1 v_ULTIMATE.start_main_~a~5_val_0_in_1) (or (= v_ULTIMATE.start_main_~a~5_val_0_in_1 0) (not .cse0)))) InVars {ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_in_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_out_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5_val_0] {419#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,556 INFO L273 TraceCheckUtils]: 16: Hoare triple {419#(= 1 ULTIMATE.start_main_~len~5)} [42] L37-->L38: Formula: (= |v_ULTIMATE.start_main_#t~post1_2| v_ULTIMATE.start_main_~len~5_6) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_2|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {438#(= |ULTIMATE.start_main_#t~post1| 1)} is VALID [2019-05-15 10:43:09,557 INFO L273 TraceCheckUtils]: 17: Hoare triple {438#(= |ULTIMATE.start_main_#t~post1| 1)} [44] L38-->L39: Formula: (= v_ULTIMATE.start_main_~len~5_7 (+ |v_ULTIMATE.start_main_#t~post1_3| 1)) InVars {ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_7} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {442#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,568 INFO L273 TraceCheckUtils]: 18: Hoare triple {442#(= 2 ULTIMATE.start_main_~len~5)} [46] L39-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {442#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,572 INFO L273 TraceCheckUtils]: 19: Hoare triple {442#(= 2 ULTIMATE.start_main_~len~5)} [33] L40-->L25: Formula: (= 0 (mod |v_ULTIMATE.start_main_#t~nondet0_2| 256)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_2|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_2|} AuxVars[] AssignedVars[] {442#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,576 INFO L273 TraceCheckUtils]: 20: Hoare triple {442#(= 2 ULTIMATE.start_main_~len~5)} [35] L25-->L26: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {442#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:09,576 INFO L273 TraceCheckUtils]: 21: Hoare triple {442#(= 2 ULTIMATE.start_main_~len~5)} [37] L26-->L27: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_#in~cond_1| (ite (let ((.cse0 (mod v_ULTIMATE.start_main_~len~5_3 4294967296))) (and (< .cse0 5) (<= 0 .cse0))) 1 0)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_3} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_1|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_3} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond] {455#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} is VALID [2019-05-15 10:43:09,581 INFO L273 TraceCheckUtils]: 22: Hoare triple {455#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} [39] L27-->L28: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond] {455#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} is VALID [2019-05-15 10:43:09,581 INFO L273 TraceCheckUtils]: 23: Hoare triple {455#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} [41] L28-->L29: Formula: (= v_ULTIMATE.start___VERIFIER_assert_~cond_2 |v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_2, ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond] {462#(<= 1 ULTIMATE.start___VERIFIER_assert_~cond)} is VALID [2019-05-15 10:43:09,582 INFO L273 TraceCheckUtils]: 24: Hoare triple {462#(<= 1 ULTIMATE.start___VERIFIER_assert_~cond)} [43] L29-->L30: Formula: (= 0 v_ULTIMATE.start___VERIFIER_assert_~cond_3) InVars {ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_3} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {383#false} is VALID [2019-05-15 10:43:09,582 INFO L273 TraceCheckUtils]: 25: Hoare triple {383#false} [45] L30-->L31: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#false} is VALID [2019-05-15 10:43:09,582 INFO L273 TraceCheckUtils]: 26: Hoare triple {383#false} [47] L31-->ULTIMATE.startErr0ASSERT_VIOLATIONASSERT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {383#false} is VALID [2019-05-15 10:43:09,584 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:43:09,585 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:43:09,585 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2019-05-15 10:43:09,585 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 27 [2019-05-15 10:43:09,586 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:43:09,586 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states. [2019-05-15 10:43:09,624 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:43:09,624 INFO L454 AbstractCegarLoop]: Interpolant automaton has 9 states [2019-05-15 10:43:09,624 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2019-05-15 10:43:09,625 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=57, Unknown=0, NotChecked=0, Total=72 [2019-05-15 10:43:09,625 INFO L87 Difference]: Start difference. First operand 28 states and 28 transitions. Second operand 9 states. [2019-05-15 10:43:10,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:10,132 INFO L93 Difference]: Finished difference Result 45 states and 45 transitions. [2019-05-15 10:43:10,132 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2019-05-15 10:43:10,132 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 27 [2019-05-15 10:43:10,133 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:43:10,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2019-05-15 10:43:10,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 46 transitions. [2019-05-15 10:43:10,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2019-05-15 10:43:10,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 46 transitions. [2019-05-15 10:43:10,137 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 46 transitions. [2019-05-15 10:43:10,191 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:43:10,193 INFO L225 Difference]: With dead ends: 45 [2019-05-15 10:43:10,193 INFO L226 Difference]: Without dead ends: 40 [2019-05-15 10:43:10,194 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=41, Invalid=169, Unknown=0, NotChecked=0, Total=210 [2019-05-15 10:43:10,194 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2019-05-15 10:43:10,197 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 35. [2019-05-15 10:43:10,197 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:43:10,197 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand 35 states. [2019-05-15 10:43:10,198 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand 35 states. [2019-05-15 10:43:10,198 INFO L87 Difference]: Start difference. First operand 40 states. Second operand 35 states. [2019-05-15 10:43:10,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:10,200 INFO L93 Difference]: Finished difference Result 40 states and 40 transitions. [2019-05-15 10:43:10,200 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 40 transitions. [2019-05-15 10:43:10,201 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:43:10,201 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:43:10,201 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 40 states. [2019-05-15 10:43:10,201 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 40 states. [2019-05-15 10:43:10,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:10,204 INFO L93 Difference]: Finished difference Result 40 states and 40 transitions. [2019-05-15 10:43:10,204 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 40 transitions. [2019-05-15 10:43:10,205 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:43:10,205 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:43:10,205 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:43:10,205 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:43:10,205 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 35 states. [2019-05-15 10:43:10,207 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 35 transitions. [2019-05-15 10:43:10,207 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 35 transitions. Word has length 27 [2019-05-15 10:43:10,207 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:43:10,207 INFO L475 AbstractCegarLoop]: Abstraction has 35 states and 35 transitions. [2019-05-15 10:43:10,208 INFO L476 AbstractCegarLoop]: Interpolant automaton has 9 states. [2019-05-15 10:43:10,208 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 35 transitions. [2019-05-15 10:43:10,209 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2019-05-15 10:43:10,209 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:43:10,209 INFO L399 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:43:10,209 INFO L418 AbstractCegarLoop]: === Iteration 4 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:43:10,210 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:43:10,210 INFO L82 PathProgramCache]: Analyzing trace with hash 1885460691, now seen corresponding path program 3 times [2019-05-15 10:43:10,211 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:43:10,237 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:43:10,241 INFO L256 TraceCheckSpWp]: Trace formula consists of 59 conjuncts, 18 conjunts are in the unsatisfiable core [2019-05-15 10:43:10,263 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:43:10,264 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:43:10,508 INFO L273 TraceCheckUtils]: 0: Hoare triple {643#true} [28] ULTIMATE.startENTRY-->L13: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res=|v_ULTIMATE.start_main_#res_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res] {643#true} is VALID [2019-05-15 10:43:10,508 INFO L273 TraceCheckUtils]: 1: Hoare triple {643#true} [29] L13-->L14: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_1|, ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_1, ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_1|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_1, ULTIMATE.start_main_~i~5=v_ULTIMATE.start_main_~i~5_1} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0, ULTIMATE.start_main_~a~5, ULTIMATE.start_main_#t~post1, ULTIMATE.start_main_~len~5, ULTIMATE.start_main_~i~5] {643#true} is VALID [2019-05-15 10:43:10,509 INFO L273 TraceCheckUtils]: 2: Hoare triple {643#true} [30] L14-->L15: Formula: true InVars {} OutVars{ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5] {643#true} is VALID [2019-05-15 10:43:10,511 INFO L273 TraceCheckUtils]: 3: Hoare triple {643#true} [31] L15-->L16: Formula: (= v_ULTIMATE.start_main_~len~5_2 0) InVars {} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {657#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,512 INFO L273 TraceCheckUtils]: 4: Hoare triple {657#(= 0 ULTIMATE.start_main_~len~5)} [32] L16-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~5=v_ULTIMATE.start_main_~i~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~5] {657#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,512 INFO L273 TraceCheckUtils]: 5: Hoare triple {657#(= 0 ULTIMATE.start_main_~len~5)} [34] L40-->L34: Formula: (not (= (mod |v_ULTIMATE.start_main_#t~nondet0_4| 256) 0)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} AuxVars[] AssignedVars[] {657#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,513 INFO L273 TraceCheckUtils]: 6: Hoare triple {657#(= 0 ULTIMATE.start_main_~len~5)} [36] L34-->L35: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {657#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,514 INFO L273 TraceCheckUtils]: 7: Hoare triple {657#(= 0 ULTIMATE.start_main_~len~5)} [38] L35-->L36: Formula: (not (= (mod v_ULTIMATE.start_main_~len~5_4 4294967296) 4)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} AuxVars[] AssignedVars[] {657#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,515 INFO L273 TraceCheckUtils]: 8: Hoare triple {657#(= 0 ULTIMATE.start_main_~len~5)} [40] L36-->L37: Formula: (let ((.cse0 (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1))) (and v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1 (or (not v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1) .cse0) (= v_ULTIMATE.start_main_~a~5_val_0_out_1 v_ULTIMATE.start_main_~a~5_val_0_in_1) (or (= v_ULTIMATE.start_main_~a~5_val_0_in_1 0) (not .cse0)))) InVars {ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_in_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_out_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5_val_0] {657#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,515 INFO L273 TraceCheckUtils]: 9: Hoare triple {657#(= 0 ULTIMATE.start_main_~len~5)} [42] L37-->L38: Formula: (= |v_ULTIMATE.start_main_#t~post1_2| v_ULTIMATE.start_main_~len~5_6) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_2|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {676#(= |ULTIMATE.start_main_#t~post1| 0)} is VALID [2019-05-15 10:43:10,516 INFO L273 TraceCheckUtils]: 10: Hoare triple {676#(= |ULTIMATE.start_main_#t~post1| 0)} [44] L38-->L39: Formula: (= v_ULTIMATE.start_main_~len~5_7 (+ |v_ULTIMATE.start_main_#t~post1_3| 1)) InVars {ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_7} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {680#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,517 INFO L273 TraceCheckUtils]: 11: Hoare triple {680#(= 1 ULTIMATE.start_main_~len~5)} [46] L39-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {680#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,522 INFO L273 TraceCheckUtils]: 12: Hoare triple {680#(= 1 ULTIMATE.start_main_~len~5)} [34] L40-->L34: Formula: (not (= (mod |v_ULTIMATE.start_main_#t~nondet0_4| 256) 0)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} AuxVars[] AssignedVars[] {680#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,523 INFO L273 TraceCheckUtils]: 13: Hoare triple {680#(= 1 ULTIMATE.start_main_~len~5)} [36] L34-->L35: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {680#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,524 INFO L273 TraceCheckUtils]: 14: Hoare triple {680#(= 1 ULTIMATE.start_main_~len~5)} [38] L35-->L36: Formula: (not (= (mod v_ULTIMATE.start_main_~len~5_4 4294967296) 4)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} AuxVars[] AssignedVars[] {680#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,525 INFO L273 TraceCheckUtils]: 15: Hoare triple {680#(= 1 ULTIMATE.start_main_~len~5)} [40] L36-->L37: Formula: (let ((.cse0 (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1))) (and v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1 (or (not v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1) .cse0) (= v_ULTIMATE.start_main_~a~5_val_0_out_1 v_ULTIMATE.start_main_~a~5_val_0_in_1) (or (= v_ULTIMATE.start_main_~a~5_val_0_in_1 0) (not .cse0)))) InVars {ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_in_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_out_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5_val_0] {680#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,526 INFO L273 TraceCheckUtils]: 16: Hoare triple {680#(= 1 ULTIMATE.start_main_~len~5)} [42] L37-->L38: Formula: (= |v_ULTIMATE.start_main_#t~post1_2| v_ULTIMATE.start_main_~len~5_6) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_2|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {699#(= |ULTIMATE.start_main_#t~post1| 1)} is VALID [2019-05-15 10:43:10,526 INFO L273 TraceCheckUtils]: 17: Hoare triple {699#(= |ULTIMATE.start_main_#t~post1| 1)} [44] L38-->L39: Formula: (= v_ULTIMATE.start_main_~len~5_7 (+ |v_ULTIMATE.start_main_#t~post1_3| 1)) InVars {ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_7} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {703#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,535 INFO L273 TraceCheckUtils]: 18: Hoare triple {703#(= 2 ULTIMATE.start_main_~len~5)} [46] L39-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {703#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,536 INFO L273 TraceCheckUtils]: 19: Hoare triple {703#(= 2 ULTIMATE.start_main_~len~5)} [34] L40-->L34: Formula: (not (= (mod |v_ULTIMATE.start_main_#t~nondet0_4| 256) 0)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} AuxVars[] AssignedVars[] {703#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,536 INFO L273 TraceCheckUtils]: 20: Hoare triple {703#(= 2 ULTIMATE.start_main_~len~5)} [36] L34-->L35: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {703#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,537 INFO L273 TraceCheckUtils]: 21: Hoare triple {703#(= 2 ULTIMATE.start_main_~len~5)} [38] L35-->L36: Formula: (not (= (mod v_ULTIMATE.start_main_~len~5_4 4294967296) 4)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} AuxVars[] AssignedVars[] {703#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,537 INFO L273 TraceCheckUtils]: 22: Hoare triple {703#(= 2 ULTIMATE.start_main_~len~5)} [40] L36-->L37: Formula: (let ((.cse0 (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1))) (and v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1 (or (not v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1) .cse0) (= v_ULTIMATE.start_main_~a~5_val_0_out_1 v_ULTIMATE.start_main_~a~5_val_0_in_1) (or (= v_ULTIMATE.start_main_~a~5_val_0_in_1 0) (not .cse0)))) InVars {ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_in_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_out_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5_val_0] {703#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,538 INFO L273 TraceCheckUtils]: 23: Hoare triple {703#(= 2 ULTIMATE.start_main_~len~5)} [42] L37-->L38: Formula: (= |v_ULTIMATE.start_main_#t~post1_2| v_ULTIMATE.start_main_~len~5_6) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_2|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {722#(= |ULTIMATE.start_main_#t~post1| 2)} is VALID [2019-05-15 10:43:10,539 INFO L273 TraceCheckUtils]: 24: Hoare triple {722#(= |ULTIMATE.start_main_#t~post1| 2)} [44] L38-->L39: Formula: (= v_ULTIMATE.start_main_~len~5_7 (+ |v_ULTIMATE.start_main_#t~post1_3| 1)) InVars {ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_7} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {726#(= 3 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,539 INFO L273 TraceCheckUtils]: 25: Hoare triple {726#(= 3 ULTIMATE.start_main_~len~5)} [46] L39-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {726#(= 3 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,540 INFO L273 TraceCheckUtils]: 26: Hoare triple {726#(= 3 ULTIMATE.start_main_~len~5)} [33] L40-->L25: Formula: (= 0 (mod |v_ULTIMATE.start_main_#t~nondet0_2| 256)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_2|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_2|} AuxVars[] AssignedVars[] {726#(= 3 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,540 INFO L273 TraceCheckUtils]: 27: Hoare triple {726#(= 3 ULTIMATE.start_main_~len~5)} [35] L25-->L26: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {726#(= 3 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:10,541 INFO L273 TraceCheckUtils]: 28: Hoare triple {726#(= 3 ULTIMATE.start_main_~len~5)} [37] L26-->L27: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_#in~cond_1| (ite (let ((.cse0 (mod v_ULTIMATE.start_main_~len~5_3 4294967296))) (and (< .cse0 5) (<= 0 .cse0))) 1 0)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_3} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_1|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_3} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond] {739#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} is VALID [2019-05-15 10:43:10,542 INFO L273 TraceCheckUtils]: 29: Hoare triple {739#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} [39] L27-->L28: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond] {739#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} is VALID [2019-05-15 10:43:10,543 INFO L273 TraceCheckUtils]: 30: Hoare triple {739#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} [41] L28-->L29: Formula: (= v_ULTIMATE.start___VERIFIER_assert_~cond_2 |v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_2, ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond] {746#(<= 1 ULTIMATE.start___VERIFIER_assert_~cond)} is VALID [2019-05-15 10:43:10,544 INFO L273 TraceCheckUtils]: 31: Hoare triple {746#(<= 1 ULTIMATE.start___VERIFIER_assert_~cond)} [43] L29-->L30: Formula: (= 0 v_ULTIMATE.start___VERIFIER_assert_~cond_3) InVars {ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_3} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {644#false} is VALID [2019-05-15 10:43:10,545 INFO L273 TraceCheckUtils]: 32: Hoare triple {644#false} [45] L30-->L31: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {644#false} is VALID [2019-05-15 10:43:10,545 INFO L273 TraceCheckUtils]: 33: Hoare triple {644#false} [47] L31-->ULTIMATE.startErr0ASSERT_VIOLATIONASSERT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {644#false} is VALID [2019-05-15 10:43:10,549 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:43:10,549 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:43:10,549 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2019-05-15 10:43:10,550 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 34 [2019-05-15 10:43:10,550 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:43:10,550 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2019-05-15 10:43:10,634 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:43:10,634 INFO L454 AbstractCegarLoop]: Interpolant automaton has 11 states [2019-05-15 10:43:10,634 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2019-05-15 10:43:10,634 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=91, Unknown=0, NotChecked=0, Total=110 [2019-05-15 10:43:10,635 INFO L87 Difference]: Start difference. First operand 35 states and 35 transitions. Second operand 11 states. [2019-05-15 10:43:11,457 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:11,457 INFO L93 Difference]: Finished difference Result 52 states and 52 transitions. [2019-05-15 10:43:11,457 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2019-05-15 10:43:11,458 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 34 [2019-05-15 10:43:11,458 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:43:11,458 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2019-05-15 10:43:11,460 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 53 transitions. [2019-05-15 10:43:11,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2019-05-15 10:43:11,462 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 53 transitions. [2019-05-15 10:43:11,462 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 53 transitions. [2019-05-15 10:43:11,520 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:43:11,522 INFO L225 Difference]: With dead ends: 52 [2019-05-15 10:43:11,522 INFO L226 Difference]: Without dead ends: 47 [2019-05-15 10:43:11,523 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=53, Invalid=289, Unknown=0, NotChecked=0, Total=342 [2019-05-15 10:43:11,523 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2019-05-15 10:43:11,526 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 42. [2019-05-15 10:43:11,526 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:43:11,526 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand 42 states. [2019-05-15 10:43:11,527 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand 42 states. [2019-05-15 10:43:11,527 INFO L87 Difference]: Start difference. First operand 47 states. Second operand 42 states. [2019-05-15 10:43:11,529 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:11,529 INFO L93 Difference]: Finished difference Result 47 states and 47 transitions. [2019-05-15 10:43:11,529 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 47 transitions. [2019-05-15 10:43:11,530 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:43:11,530 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:43:11,530 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 47 states. [2019-05-15 10:43:11,530 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 47 states. [2019-05-15 10:43:11,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:11,533 INFO L93 Difference]: Finished difference Result 47 states and 47 transitions. [2019-05-15 10:43:11,533 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 47 transitions. [2019-05-15 10:43:11,533 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:43:11,534 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:43:11,534 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:43:11,534 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:43:11,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 42 states. [2019-05-15 10:43:11,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 42 transitions. [2019-05-15 10:43:11,536 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 42 transitions. Word has length 34 [2019-05-15 10:43:11,536 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:43:11,536 INFO L475 AbstractCegarLoop]: Abstraction has 42 states and 42 transitions. [2019-05-15 10:43:11,536 INFO L476 AbstractCegarLoop]: Interpolant automaton has 11 states. [2019-05-15 10:43:11,536 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 42 transitions. [2019-05-15 10:43:11,537 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2019-05-15 10:43:11,538 INFO L391 BasicCegarLoop]: Found error trace [2019-05-15 10:43:11,538 INFO L399 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2019-05-15 10:43:11,538 INFO L418 AbstractCegarLoop]: === Iteration 5 === [ULTIMATE.startErr0ASSERT_VIOLATIONASSERT]=== [2019-05-15 10:43:11,538 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2019-05-15 10:43:11,539 INFO L82 PathProgramCache]: Analyzing trace with hash 1255762437, now seen corresponding path program 4 times [2019-05-15 10:43:11,539 INFO L69 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2019-05-15 10:43:11,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:43:11,574 INFO L256 TraceCheckSpWp]: Trace formula consists of 72 conjuncts, 22 conjunts are in the unsatisfiable core [2019-05-15 10:43:11,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2019-05-15 10:43:11,619 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2019-05-15 10:43:12,026 INFO L273 TraceCheckUtils]: 0: Hoare triple {959#true} [28] ULTIMATE.startENTRY-->L13: Formula: true InVars {} OutVars{ULTIMATE.start_main_#res=|v_ULTIMATE.start_main_#res_1|} AuxVars[] AssignedVars[ULTIMATE.start_main_#res] {959#true} is VALID [2019-05-15 10:43:12,027 INFO L273 TraceCheckUtils]: 1: Hoare triple {959#true} [29] L13-->L14: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_1|, ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_1, ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_1|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_1, ULTIMATE.start_main_~i~5=v_ULTIMATE.start_main_~i~5_1} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0, ULTIMATE.start_main_~a~5, ULTIMATE.start_main_#t~post1, ULTIMATE.start_main_~len~5, ULTIMATE.start_main_~i~5] {959#true} is VALID [2019-05-15 10:43:12,027 INFO L273 TraceCheckUtils]: 2: Hoare triple {959#true} [30] L14-->L15: Formula: true InVars {} OutVars{ULTIMATE.start_main_~a~5=v_ULTIMATE.start_main_~a~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5] {959#true} is VALID [2019-05-15 10:43:12,028 INFO L273 TraceCheckUtils]: 3: Hoare triple {959#true} [31] L15-->L16: Formula: (= v_ULTIMATE.start_main_~len~5_2 0) InVars {} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {973#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,029 INFO L273 TraceCheckUtils]: 4: Hoare triple {973#(= 0 ULTIMATE.start_main_~len~5)} [32] L16-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_~i~5=v_ULTIMATE.start_main_~i~5_2} AuxVars[] AssignedVars[ULTIMATE.start_main_~i~5] {973#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,030 INFO L273 TraceCheckUtils]: 5: Hoare triple {973#(= 0 ULTIMATE.start_main_~len~5)} [34] L40-->L34: Formula: (not (= (mod |v_ULTIMATE.start_main_#t~nondet0_4| 256) 0)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} AuxVars[] AssignedVars[] {973#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,031 INFO L273 TraceCheckUtils]: 6: Hoare triple {973#(= 0 ULTIMATE.start_main_~len~5)} [36] L34-->L35: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {973#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,032 INFO L273 TraceCheckUtils]: 7: Hoare triple {973#(= 0 ULTIMATE.start_main_~len~5)} [38] L35-->L36: Formula: (not (= (mod v_ULTIMATE.start_main_~len~5_4 4294967296) 4)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} AuxVars[] AssignedVars[] {973#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,033 INFO L273 TraceCheckUtils]: 8: Hoare triple {973#(= 0 ULTIMATE.start_main_~len~5)} [40] L36-->L37: Formula: (let ((.cse0 (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1))) (and v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1 (or (not v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1) .cse0) (= v_ULTIMATE.start_main_~a~5_val_0_out_1 v_ULTIMATE.start_main_~a~5_val_0_in_1) (or (= v_ULTIMATE.start_main_~a~5_val_0_in_1 0) (not .cse0)))) InVars {ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_in_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_out_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5_val_0] {973#(= 0 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,034 INFO L273 TraceCheckUtils]: 9: Hoare triple {973#(= 0 ULTIMATE.start_main_~len~5)} [42] L37-->L38: Formula: (= |v_ULTIMATE.start_main_#t~post1_2| v_ULTIMATE.start_main_~len~5_6) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_2|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {992#(= |ULTIMATE.start_main_#t~post1| 0)} is VALID [2019-05-15 10:43:12,035 INFO L273 TraceCheckUtils]: 10: Hoare triple {992#(= |ULTIMATE.start_main_#t~post1| 0)} [44] L38-->L39: Formula: (= v_ULTIMATE.start_main_~len~5_7 (+ |v_ULTIMATE.start_main_#t~post1_3| 1)) InVars {ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_7} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {996#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,036 INFO L273 TraceCheckUtils]: 11: Hoare triple {996#(= 1 ULTIMATE.start_main_~len~5)} [46] L39-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {996#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,037 INFO L273 TraceCheckUtils]: 12: Hoare triple {996#(= 1 ULTIMATE.start_main_~len~5)} [34] L40-->L34: Formula: (not (= (mod |v_ULTIMATE.start_main_#t~nondet0_4| 256) 0)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} AuxVars[] AssignedVars[] {996#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,042 INFO L273 TraceCheckUtils]: 13: Hoare triple {996#(= 1 ULTIMATE.start_main_~len~5)} [36] L34-->L35: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {996#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,043 INFO L273 TraceCheckUtils]: 14: Hoare triple {996#(= 1 ULTIMATE.start_main_~len~5)} [38] L35-->L36: Formula: (not (= (mod v_ULTIMATE.start_main_~len~5_4 4294967296) 4)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} AuxVars[] AssignedVars[] {996#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,043 INFO L273 TraceCheckUtils]: 15: Hoare triple {996#(= 1 ULTIMATE.start_main_~len~5)} [40] L36-->L37: Formula: (let ((.cse0 (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1))) (and v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1 (or (not v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1) .cse0) (= v_ULTIMATE.start_main_~a~5_val_0_out_1 v_ULTIMATE.start_main_~a~5_val_0_in_1) (or (= v_ULTIMATE.start_main_~a~5_val_0_in_1 0) (not .cse0)))) InVars {ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_in_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_out_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5_val_0] {996#(= 1 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,044 INFO L273 TraceCheckUtils]: 16: Hoare triple {996#(= 1 ULTIMATE.start_main_~len~5)} [42] L37-->L38: Formula: (= |v_ULTIMATE.start_main_#t~post1_2| v_ULTIMATE.start_main_~len~5_6) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_2|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {1015#(= |ULTIMATE.start_main_#t~post1| 1)} is VALID [2019-05-15 10:43:12,045 INFO L273 TraceCheckUtils]: 17: Hoare triple {1015#(= |ULTIMATE.start_main_#t~post1| 1)} [44] L38-->L39: Formula: (= v_ULTIMATE.start_main_~len~5_7 (+ |v_ULTIMATE.start_main_#t~post1_3| 1)) InVars {ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_7} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {1019#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,045 INFO L273 TraceCheckUtils]: 18: Hoare triple {1019#(= 2 ULTIMATE.start_main_~len~5)} [46] L39-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {1019#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,046 INFO L273 TraceCheckUtils]: 19: Hoare triple {1019#(= 2 ULTIMATE.start_main_~len~5)} [34] L40-->L34: Formula: (not (= (mod |v_ULTIMATE.start_main_#t~nondet0_4| 256) 0)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} AuxVars[] AssignedVars[] {1019#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,046 INFO L273 TraceCheckUtils]: 20: Hoare triple {1019#(= 2 ULTIMATE.start_main_~len~5)} [36] L34-->L35: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {1019#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,047 INFO L273 TraceCheckUtils]: 21: Hoare triple {1019#(= 2 ULTIMATE.start_main_~len~5)} [38] L35-->L36: Formula: (not (= (mod v_ULTIMATE.start_main_~len~5_4 4294967296) 4)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} AuxVars[] AssignedVars[] {1019#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,048 INFO L273 TraceCheckUtils]: 22: Hoare triple {1019#(= 2 ULTIMATE.start_main_~len~5)} [40] L36-->L37: Formula: (let ((.cse0 (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1))) (and v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1 (or (not v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1) .cse0) (= v_ULTIMATE.start_main_~a~5_val_0_out_1 v_ULTIMATE.start_main_~a~5_val_0_in_1) (or (= v_ULTIMATE.start_main_~a~5_val_0_in_1 0) (not .cse0)))) InVars {ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_in_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_out_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5_val_0] {1019#(= 2 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,050 INFO L273 TraceCheckUtils]: 23: Hoare triple {1019#(= 2 ULTIMATE.start_main_~len~5)} [42] L37-->L38: Formula: (= |v_ULTIMATE.start_main_#t~post1_2| v_ULTIMATE.start_main_~len~5_6) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_2|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {1038#(= |ULTIMATE.start_main_#t~post1| 2)} is VALID [2019-05-15 10:43:12,051 INFO L273 TraceCheckUtils]: 24: Hoare triple {1038#(= |ULTIMATE.start_main_#t~post1| 2)} [44] L38-->L39: Formula: (= v_ULTIMATE.start_main_~len~5_7 (+ |v_ULTIMATE.start_main_#t~post1_3| 1)) InVars {ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_7} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {1042#(= 3 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,052 INFO L273 TraceCheckUtils]: 25: Hoare triple {1042#(= 3 ULTIMATE.start_main_~len~5)} [46] L39-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {1042#(= 3 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,052 INFO L273 TraceCheckUtils]: 26: Hoare triple {1042#(= 3 ULTIMATE.start_main_~len~5)} [34] L40-->L34: Formula: (not (= (mod |v_ULTIMATE.start_main_#t~nondet0_4| 256) 0)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_4|} AuxVars[] AssignedVars[] {1042#(= 3 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,053 INFO L273 TraceCheckUtils]: 27: Hoare triple {1042#(= 3 ULTIMATE.start_main_~len~5)} [36] L34-->L35: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_5|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {1042#(= 3 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,068 INFO L273 TraceCheckUtils]: 28: Hoare triple {1042#(= 3 ULTIMATE.start_main_~len~5)} [38] L35-->L36: Formula: (not (= (mod v_ULTIMATE.start_main_~len~5_4 4294967296) 4)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} OutVars{ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_4} AuxVars[] AssignedVars[] {1042#(= 3 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,069 INFO L273 TraceCheckUtils]: 29: Hoare triple {1042#(= 3 ULTIMATE.start_main_~len~5)} [40] L36-->L37: Formula: (let ((.cse0 (= (mod v_ULTIMATE.start_main_~len~5_5 4294967296) v_ULTIMATE.start_main_~a~5_idx_0_term_1))) (and v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1 (or (not v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1) .cse0) (= v_ULTIMATE.start_main_~a~5_val_0_out_1 v_ULTIMATE.start_main_~a~5_val_0_in_1) (or (= v_ULTIMATE.start_main_~a~5_val_0_in_1 0) (not .cse0)))) InVars {ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_in_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} OutVars{ULTIMATE.start_main_~a~5_idx_0=v_ULTIMATE.start_main_~a~5_idx_0_term_1, ULTIMATE.start_main_~a~5_idx_0_bool=v_ULTIMATE.start_main_~a~5_idx_0_term_assigned_1, ULTIMATE.start_main_~a~5_val_0=v_ULTIMATE.start_main_~a~5_val_0_out_1, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_5} AuxVars[] AssignedVars[ULTIMATE.start_main_~a~5_val_0] {1042#(= 3 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,069 INFO L273 TraceCheckUtils]: 30: Hoare triple {1042#(= 3 ULTIMATE.start_main_~len~5)} [42] L37-->L38: Formula: (= |v_ULTIMATE.start_main_#t~post1_2| v_ULTIMATE.start_main_~len~5_6) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_2|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_6} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {1061#(= |ULTIMATE.start_main_#t~post1| 3)} is VALID [2019-05-15 10:43:12,070 INFO L273 TraceCheckUtils]: 31: Hoare triple {1061#(= |ULTIMATE.start_main_#t~post1| 3)} [44] L38-->L39: Formula: (= v_ULTIMATE.start_main_~len~5_7 (+ |v_ULTIMATE.start_main_#t~post1_3| 1)) InVars {ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_3|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_7} AuxVars[] AssignedVars[ULTIMATE.start_main_~len~5] {1065#(= 4 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,073 INFO L273 TraceCheckUtils]: 32: Hoare triple {1065#(= 4 ULTIMATE.start_main_~len~5)} [46] L39-->L40: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~post1=|v_ULTIMATE.start_main_#t~post1_4|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~post1] {1065#(= 4 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,073 INFO L273 TraceCheckUtils]: 33: Hoare triple {1065#(= 4 ULTIMATE.start_main_~len~5)} [33] L40-->L25: Formula: (= 0 (mod |v_ULTIMATE.start_main_#t~nondet0_2| 256)) InVars {ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_2|} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_2|} AuxVars[] AssignedVars[] {1065#(= 4 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,076 INFO L273 TraceCheckUtils]: 34: Hoare triple {1065#(= 4 ULTIMATE.start_main_~len~5)} [35] L25-->L26: Formula: true InVars {} OutVars{ULTIMATE.start_main_#t~nondet0=|v_ULTIMATE.start_main_#t~nondet0_3|} AuxVars[] AssignedVars[ULTIMATE.start_main_#t~nondet0] {1065#(= 4 ULTIMATE.start_main_~len~5)} is VALID [2019-05-15 10:43:12,077 INFO L273 TraceCheckUtils]: 35: Hoare triple {1065#(= 4 ULTIMATE.start_main_~len~5)} [37] L26-->L27: Formula: (= |v_ULTIMATE.start___VERIFIER_assert_#in~cond_1| (ite (let ((.cse0 (mod v_ULTIMATE.start_main_~len~5_3 4294967296))) (and (< .cse0 5) (<= 0 .cse0))) 1 0)) InVars {ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_3} OutVars{ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_1|, ULTIMATE.start_main_~len~5=v_ULTIMATE.start_main_~len~5_3} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_#in~cond] {1078#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} is VALID [2019-05-15 10:43:12,077 INFO L273 TraceCheckUtils]: 36: Hoare triple {1078#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} [39] L27-->L28: Formula: true InVars {} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond] {1078#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} is VALID [2019-05-15 10:43:12,078 INFO L273 TraceCheckUtils]: 37: Hoare triple {1078#(= 1 |ULTIMATE.start___VERIFIER_assert_#in~cond|)} [41] L28-->L29: Formula: (= v_ULTIMATE.start___VERIFIER_assert_~cond_2 |v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|) InVars {ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_2, ULTIMATE.start___VERIFIER_assert_#in~cond=|v_ULTIMATE.start___VERIFIER_assert_#in~cond_2|} AuxVars[] AssignedVars[ULTIMATE.start___VERIFIER_assert_~cond] {1085#(<= 1 ULTIMATE.start___VERIFIER_assert_~cond)} is VALID [2019-05-15 10:43:12,078 INFO L273 TraceCheckUtils]: 38: Hoare triple {1085#(<= 1 ULTIMATE.start___VERIFIER_assert_~cond)} [43] L29-->L30: Formula: (= 0 v_ULTIMATE.start___VERIFIER_assert_~cond_3) InVars {ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_3} OutVars{ULTIMATE.start___VERIFIER_assert_~cond=v_ULTIMATE.start___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {960#false} is VALID [2019-05-15 10:43:12,087 INFO L273 TraceCheckUtils]: 39: Hoare triple {960#false} [45] L30-->L31: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {960#false} is VALID [2019-05-15 10:43:12,087 INFO L273 TraceCheckUtils]: 40: Hoare triple {960#false} [47] L31-->ULTIMATE.startErr0ASSERT_VIOLATIONASSERT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {960#false} is VALID [2019-05-15 10:43:12,090 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 0 proven. 46 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2019-05-15 10:43:12,090 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2019-05-15 10:43:12,090 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2019-05-15 10:43:12,091 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 41 [2019-05-15 10:43:12,091 INFO L84 Accepts]: Finished accepts. word is accepted. [2019-05-15 10:43:12,092 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2019-05-15 10:43:12,160 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:43:12,160 INFO L454 AbstractCegarLoop]: Interpolant automaton has 13 states [2019-05-15 10:43:12,161 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2019-05-15 10:43:12,161 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=133, Unknown=0, NotChecked=0, Total=156 [2019-05-15 10:43:12,162 INFO L87 Difference]: Start difference. First operand 42 states and 42 transitions. Second operand 13 states. [2019-05-15 10:43:13,194 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:13,195 INFO L93 Difference]: Finished difference Result 41 states and 40 transitions. [2019-05-15 10:43:13,195 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2019-05-15 10:43:13,195 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 41 [2019-05-15 10:43:13,195 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2019-05-15 10:43:13,196 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2019-05-15 10:43:13,197 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 42 transitions. [2019-05-15 10:43:13,197 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2019-05-15 10:43:13,199 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 42 transitions. [2019-05-15 10:43:13,199 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 42 transitions. [2019-05-15 10:43:13,291 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2019-05-15 10:43:13,291 INFO L225 Difference]: With dead ends: 41 [2019-05-15 10:43:13,292 INFO L226 Difference]: Without dead ends: 0 [2019-05-15 10:43:13,292 INFO L628 BasicCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 44 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=65, Invalid=441, Unknown=0, NotChecked=0, Total=506 [2019-05-15 10:43:13,292 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2019-05-15 10:43:13,292 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2019-05-15 10:43:13,293 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2019-05-15 10:43:13,293 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand 0 states. [2019-05-15 10:43:13,293 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2019-05-15 10:43:13,293 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2019-05-15 10:43:13,293 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:13,293 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2019-05-15 10:43:13,293 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-05-15 10:43:13,293 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:43:13,294 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:43:13,294 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2019-05-15 10:43:13,294 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2019-05-15 10:43:13,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2019-05-15 10:43:13,295 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2019-05-15 10:43:13,295 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-05-15 10:43:13,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:43:13,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2019-05-15 10:43:13,296 INFO L88 GeneralOperation]: Finished isEquivalent. [2019-05-15 10:43:13,296 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2019-05-15 10:43:13,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2019-05-15 10:43:13,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2019-05-15 10:43:13,296 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 41 [2019-05-15 10:43:13,296 INFO L84 Accepts]: Finished accepts. word is rejected. [2019-05-15 10:43:13,297 INFO L475 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2019-05-15 10:43:13,297 INFO L476 AbstractCegarLoop]: Interpolant automaton has 13 states. [2019-05-15 10:43:13,297 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2019-05-15 10:43:13,297 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2019-05-15 10:43:13,300 INFO L303 ceAbstractionStarter]: Did not count any witness invariants because Icfg is not BoogieIcfg [2019-05-15 10:43:13,302 INFO L202 PluginConnector]: Adding new model n.c11.i_3.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 15.05 10:43:13 BasicIcfg [2019-05-15 10:43:13,302 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2019-05-15 10:43:13,303 INFO L168 Benchmark]: Toolchain (without parser) took 7540.19 ms. Allocated memory was 141.0 MB in the beginning and 233.8 MB in the end (delta: 92.8 MB). Free memory was 109.6 MB in the beginning and 83.2 MB in the end (delta: 26.4 MB). Peak memory consumption was 119.2 MB. Max. memory is 7.1 GB. [2019-05-15 10:43:13,305 INFO L168 Benchmark]: Boogie PL CUP Parser took 0.19 ms. Allocated memory is still 141.0 MB. Free memory is still 110.8 MB. There was no memory consumed. Max. memory is 7.1 GB. [2019-05-15 10:43:13,306 INFO L168 Benchmark]: Boogie Procedure Inliner took 34.29 ms. Allocated memory is still 141.0 MB. Free memory was 109.4 MB in the beginning and 107.7 MB in the end (delta: 1.7 MB). Peak memory consumption was 1.7 MB. Max. memory is 7.1 GB. [2019-05-15 10:43:13,307 INFO L168 Benchmark]: Boogie Preprocessor took 19.70 ms. Allocated memory is still 141.0 MB. Free memory was 107.7 MB in the beginning and 106.8 MB in the end (delta: 933.7 kB). Peak memory consumption was 933.7 kB. Max. memory is 7.1 GB. [2019-05-15 10:43:13,308 INFO L168 Benchmark]: RCFGBuilder took 646.04 ms. Allocated memory is still 141.0 MB. Free memory was 106.6 MB in the beginning and 94.6 MB in the end (delta: 12.0 MB). Peak memory consumption was 12.0 MB. Max. memory is 7.1 GB. [2019-05-15 10:43:13,308 INFO L168 Benchmark]: IcfgTransformer took 341.37 ms. Allocated memory is still 141.0 MB. Free memory was 94.6 MB in the beginning and 90.1 MB in the end (delta: 4.5 MB). Peak memory consumption was 4.5 MB. Max. memory is 7.1 GB. [2019-05-15 10:43:13,309 INFO L168 Benchmark]: TraceAbstraction took 6493.58 ms. Allocated memory was 141.0 MB in the beginning and 233.8 MB in the end (delta: 92.8 MB). Free memory was 89.9 MB in the beginning and 83.2 MB in the end (delta: 6.6 MB). Peak memory consumption was 99.4 MB. Max. memory is 7.1 GB. [2019-05-15 10:43:13,314 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.19 ms. Allocated memory is still 141.0 MB. Free memory is still 110.8 MB. There was no memory consumed. Max. memory is 7.1 GB. * Boogie Procedure Inliner took 34.29 ms. Allocated memory is still 141.0 MB. Free memory was 109.4 MB in the beginning and 107.7 MB in the end (delta: 1.7 MB). Peak memory consumption was 1.7 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 19.70 ms. Allocated memory is still 141.0 MB. Free memory was 107.7 MB in the beginning and 106.8 MB in the end (delta: 933.7 kB). Peak memory consumption was 933.7 kB. Max. memory is 7.1 GB. * RCFGBuilder took 646.04 ms. Allocated memory is still 141.0 MB. Free memory was 106.6 MB in the beginning and 94.6 MB in the end (delta: 12.0 MB). Peak memory consumption was 12.0 MB. Max. memory is 7.1 GB. * IcfgTransformer took 341.37 ms. Allocated memory is still 141.0 MB. Free memory was 94.6 MB in the beginning and 90.1 MB in the end (delta: 4.5 MB). Peak memory consumption was 4.5 MB. Max. memory is 7.1 GB. * TraceAbstraction took 6493.58 ms. Allocated memory was 141.0 MB in the beginning and 233.8 MB in the end (delta: 92.8 MB). Free memory was 89.9 MB in the beginning and 83.2 MB in the end (delta: 6.6 MB). Peak memory consumption was 99.4 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 42]: 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, 22 locations, 1 error locations. SAFE Result, 6.4s OverallTime, 5 OverallIterations, 4 TraceHistogramMax, 3.6s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 97 SDtfs, 52 SDslu, 582 SDs, 0 SdLazy, 576 SolverSat, 11 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 1.0s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 160 GetRequests, 95 SyntacticMatches, 0 SemanticMatches, 65 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 90 ImplicationChecksByTransitivity, 1.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=42occurred in iteration=4, 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, 5 MinimizatonAttempts, 20 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 1.9s InterpolantComputationTime, 135 NumberOfCodeBlocks, 135 NumberOfCodeBlocksAsserted, 5 NumberOfCheckSat, 130 ConstructedInterpolants, 0 QuantifiedInterpolants, 10310 SizeOfPredicates, 35 NumberOfNonLiveVariables, 230 ConjunctsInSsa, 70 ConjunctsInUnsatCore, 5 InterpolantComputations, 1 PerfectInterpolantSequences, 0/80 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be correct! Received shutdown request...