Nuprl Lemma : es-hist-is-concat

∀[Info:Type]
  ∀es:EO+(Info). ∀LL:Info List List. ∀e1,e2:E.
    ∀L:Info List
      (∃f:ℕ||LL|| + 1 ─→ E
        ((((f 0) = e1 ∈ E) ∧ f ||LL|| ≤loc e2 )
        c∧ (∀i:ℕ||LL||. (f i <loc f (i + 1)))
        c∧ ((∀i:ℕ||LL||. (es-hist(es;f i;pred(f (i + 1))) = LL[i] ∈ (Info List)))
           ∧ (es-hist(es;f ||LL||;e2) = L ∈ (Info List))))) supposing 
         ((es-hist(es;e1;e2) = (concat(LL) @ L) ∈ (Info List)) and 
         (¬(L = [] ∈ (Info List))) and 
         (∀L∈LL.¬(L = [] ∈ (Info List)))) 
    supposing loc(e1) = loc(e2) ∈ Id


Proof




Definitions occuring in Statement :  es-hist: es-hist(es;e1;e2),  event-ordering+: EO+(Info),  es-le: e ≤loc e' ,  es-locl: (e <loc e'),  es-pred: pred(e),  es-loc: loc(e),  es-E: E,  Id: Id,  l_all: (∀x∈L.P[x]),  concat: concat(ll),  select: L[n],  length: ||as||,  append: as @ bs,  nil: [],  list: T List,  int_seg: {i..j-},  uimplies: b supposing a,  uall: ∀[x:A]. B[x],  cand: A c∧ B,  all: ∀x:A. B[x],  exists: ∃x:A. B[x],  not: ¬A,  and: P ∧ Q,  apply: f a,  function: x:A ─→ B[x],  add: n + m,  natural_number: $n,  universe: Type,  equal: s = t ∈ T
Lemmas :  list_induction,  all_wf,  isect_wf,  exists_wf,  es-le_wf,  es-locl_wf,  equal_wf,  es-hist_wf,  es-pred_wf,  es-locl-first,  decidable__lt,  false_wf,  less-iff-le,  condition-implies-le,  minus-add,  minus-one-mul,  add-swap,  add-commutes,  add_functionality_wrt_le,  add-associates,  le-add-cancel,  lelt_wf,  decidable__le,  not-le-2,  zero-add,  sq_stable__le,  add-zero,  le-add-cancel2,  assert_elim,  btrue_neq_bfalse,  assert_wf,  es-first_wf2,  select_wf,  list_wf,  event-ordering+_wf,  reduce_nil_lemma,  length_of_nil_lemma,  stuck-spread,  base_wf,  list_ind_nil_lemma,  length_nil,  non_neg_length,  nil_wf,  length_wf_nil,  int_seg_wf,  length_wf,  equal-wf-T-base,  less_than_transitivity1,  less_than_irreflexivity,  not_wf,  l_all_wf2,  l_member_wf,  Id_wf,  es-loc_wf,  event-ordering+_subtype,  es-E_wf,  decidable__es-locl,  null-es-hist,  null_wf3,  subtype_rel_list,  top_wf,  assert_of_null,  es-le-not-locl,  cons_wf,  append_wf,  concat_wf,  concat-cons,  append_assoc_sq,  es-hist-is-append,  append_is_nil,  l_all_cons,  length_of_cons_lemma,  eq_int_wf,  bool_wf,  bnot_wf,  subtract_wf,  uiff_transitivity,  eqtt_to_assert,  assert_of_eq_int,  iff_transitivity,  iff_weakening_uiff,  eqff_to_assert,  assert_of_bnot,  length_wf_nat,  subtype_base_sq,  int_subtype_base,  and_wf,  es-causl_wf,  general_arith_equation1,  not-equal-2,  minus-zero,  minus-minus,  squash_wf,  true_wf,  event_ordering_wf,  iff_weakening_equal,  select_cons_tl_sq,  trivial-int-eq1,  length_cons
\mforall{}[Info:Type]
    \mforall{}es:EO+(Info).  \mforall{}LL:Info  List  List.  \mforall{}e1,e2:E.
        \mforall{}L:Info  List
            (\mexists{}f:\mBbbN{}||LL||  +  1  {}\mrightarrow{}  E
                ((((f  0)  =  e1)  \mwedge{}  f  ||LL||  \mleq{}loc  e2  )
                c\mwedge{}  (\mforall{}i:\mBbbN{}||LL||.  (f  i  <loc  f  (i  +  1)))
                c\mwedge{}  ((\mforall{}i:\mBbbN{}||LL||.  (es-hist(es;f  i;pred(f  (i  +  1)))  =  LL[i]))
                      \mwedge{}  (es-hist(es;f  ||LL||;e2)  =  L))))  supposing 
                  ((es-hist(es;e1;e2)  =  (concat(LL)  @  L))  and 
                  (\mneg{}(L  =  []))  and 
                  (\mforall{}L\mmember{}LL.\mneg{}(L  =  []))) 
        supposing  loc(e1)  =  loc(e2)



Date html generated: 2015_07_17-PM-00_10_57
Last ObjectModification: 2015_02_04-PM-05_39_40

Home Index