Nuprl Lemma : pi_term-induction

∀[P:pi_term() ⟶ ℙ]
  (P[pizero()]
  ⇒ (∀pre:pi_prefix(). ∀body:pi_term().  (P[body] ⇒ P[picomm(pre;body)]))
  ⇒ (∀left,right:pi_term().  (P[left] ⇒ P[right] ⇒ P[pioption(left;right)]))
  ⇒ (∀left,right:pi_term().  (P[left] ⇒ P[right] ⇒ P[pipar(left;right)]))
  ⇒ (∀body:pi_term(). (P[body] ⇒ P[pirep(body)]))
  ⇒ (∀name:Name. ∀body:pi_term().  (P[body] ⇒ P[pinew(name;body)]))
  ⇒ {∀v:pi_term(). P[v]})


Proof




Definitions occuring in Statement :  pinew: pinew(name;body),  pirep: pirep(body),  pipar: pipar(left;right),  pioption: pioption(left;right),  picomm: picomm(pre;body),  pizero: pizero(),  pi_term: pi_term(),  pi_prefix: pi_prefix(),  name: Name,  uall: ∀[x:A]. B[x],  prop: ℙ,  guard: {T},  so_apply: x[s],  all: ∀x:A. B[x],  implies: P ⇒ Q,  function: x:A ⟶ B[x]
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  implies: P ⇒ Q,  guard: {T},  so_lambda: λ2x.t[x],  member: t ∈ T,  uimplies: b supposing a,  subtype_rel: A ⊆r B,  nat: ℕ,  prop: ℙ,  so_apply: x[s],  all: ∀x:A. B[x],  le: A ≤ B,  and: P ∧ Q,  not: ¬A,  false: False,  ext-eq: A ≡ B,  bool: 𝔹,  unit: Unit,  it: ⋅,  btrue: tt,  uiff: uiff(P;Q),  sq_type: SQType(T),  eq_atom: x =a y,  ifthenelse: if b then t else f fi ,  pizero: pizero(),  pi_term_size: pi_term_size(p),  bfalse: ff,  exists: ∃x:A. B[x],  or: P ∨ Q,  bnot: ¬bb,  assert: ↑b,  picomm: picomm(pre;body),  cand: A c∧ B,  ge: i ≥ j ,  decidable: Dec(P),  satisfiable_int_formula: satisfiable_int_formula(fmla),  top: Top,  int_seg: {i..j-},  lelt: i ≤ j < k,  less_than: a < b,  squash: ↓T,  pioption: pioption(left;right),  pipar: pipar(left;right),  pirep: pirep(body),  pinew: pinew(name;body)

Latex:
\mforall{}[P:pi\_term()  {}\mrightarrow{}  \mBbbP{}]
    (P[pizero()]
    {}\mRightarrow{}  (\mforall{}pre:pi\_prefix().  \mforall{}body:pi\_term().    (P[body]  {}\mRightarrow{}  P[picomm(pre;body)]))
    {}\mRightarrow{}  (\mforall{}left,right:pi\_term().    (P[left]  {}\mRightarrow{}  P[right]  {}\mRightarrow{}  P[pioption(left;right)]))
    {}\mRightarrow{}  (\mforall{}left,right:pi\_term().    (P[left]  {}\mRightarrow{}  P[right]  {}\mRightarrow{}  P[pipar(left;right)]))
    {}\mRightarrow{}  (\mforall{}body:pi\_term().  (P[body]  {}\mRightarrow{}  P[pirep(body)]))
    {}\mRightarrow{}  (\mforall{}name:Name.  \mforall{}body:pi\_term().    (P[body]  {}\mRightarrow{}  P[pinew(name;body)]))
    {}\mRightarrow{}  \{\mforall{}v:pi\_term().  P[v]\})



Date html generated: 2016_05_17-AM-11_22_35
Last ObjectModification: 2016_01_18-AM-07_49_35

Theory : event-logic-applications


Home Index