Nuprl Lemma : proof-tree-induction-ext

∀[Sequent,Rule:Type].
  ∀effect:(Sequent × Rule) ⟶ (Sequent List?)
    ∀[Q:proof-tree(Sequent;Rule;effect) ⟶ ℙ]
      ((∀s:Sequent. ∀r:Rule.  Q[proof-abort(s;r)] supposing ↑isr(effect <s, r>))
      ⇒ (∀s:Sequent. ∀r:Rule.
            ∀L:proof-tree(Sequent;Rule;effect) List
              (∀pf∈L.Q[pf]) ⇒ Q[make-proof-tree(s;r;L)] supposing ||L|| = ||outl(effect <s, r>)|| ∈ ℤ 
            supposing ↑isl(effect <s, r>))
      ⇒ (∀pf:proof-tree(Sequent;Rule;effect). Q[pf]))


Proof




Definitions occuring in Statement :  proof-abort: proof-abort(s;r),  make-proof-tree: make-proof-tree(s;r;L),  proof-tree: proof-tree(Sequent;Rule;effect),  l_all: (∀x∈L.P[x]),  length: ||as||,  list: T List,  outl: outl(x),  assert: ↑b,  isr: isr(x),  isl: isl(x),  uimplies: b supposing a,  uall: ∀[x:A]. B[x],  prop: ℙ,  so_apply: x[s],  all: ∀x:A. B[x],  implies: P ⇒ Q,  unit: Unit,  apply: f a,  function: x:A ⟶ B[x],  pair: <a, b>,  product: x:A × B[x],  union: left + right,  int: ℤ,  universe: Type,  equal: s = t ∈ T
Definitions unfolded in proof :  member: t ∈ T,  proof_tree_ind: proof_tree_ind(effect;abort;progress;pf),  proof-tree-induction,  W-induction,  uall: ∀[x:A]. B[x],  so_lambda: so_lambda(x,y,z,w.t[x; y; z; w]),  so_apply: x[s1;s2;s3;s4],  top: Top,  uimplies: b supposing a,  strict4: strict4(F),  and: P ∧ Q,  all: ∀x:A. B[x],  implies: P ⇒ Q,  has-value: (a)↓,  prop: ℙ,  guard: {T},  or: P ∨ Q,  squash: ↓T,  so_lambda: λ2x y.t[x; y],  so_apply: x[s1;s2],  so_lambda: λ2x.t[x],  so_apply: x[s]
Lemmas referenced :  proof-tree-induction,  lifting-strict-spread,  has-value_wf_base,  base_wf,  is-exception_wf,  top_wf,  equal_wf,  lifting-strict-decide,  W-induction
Rules used in proof :  introduction,  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  cut,  instantiate,  extract_by_obid,  hypothesis,  sqequalRule,  thin,  sqequalHypSubstitution,  equalityTransitivity,  equalitySymmetry,  isectElimination,  baseClosed,  isect_memberEquality,  voidElimination,  voidEquality,  independent_isectElimination,  independent_pairFormation,  lambdaFormation,  callbyvalueApply,  baseApply,  closedConclusion,  hypothesisEquality,  applyExceptionCases,  inrFormation,  imageMemberEquality,  imageElimination,  inlFormation,  because_Cache,  sqequalSqle,  divergentSqle,  callbyvalueSpread,  productEquality,  productElimination,  sqleReflexivity,  dependent_functionElimination,  independent_functionElimination,  spreadExceptionCases,  axiomSqleEquality,  exceptionSqequal

Latex:
\mforall{}[Sequent,Rule:Type].
    \mforall{}effect:(Sequent  \mtimes{}  Rule)  {}\mrightarrow{}  (Sequent  List?)
        \mforall{}[Q:proof-tree(Sequent;Rule;effect)  {}\mrightarrow{}  \mBbbP{}]
            ((\mforall{}s:Sequent.  \mforall{}r:Rule.    Q[proof-abort(s;r)]  supposing  \muparrow{}isr(effect  <s,  r>))
            {}\mRightarrow{}  (\mforall{}s:Sequent.  \mforall{}r:Rule.
                        \mforall{}L:proof-tree(Sequent;Rule;effect)  List
                            (\mforall{}pf\mmember{}L.Q[pf])  {}\mRightarrow{}  Q[make-proof-tree(s;r;L)]  supposing  ||L||  =  ||outl(effect  <s,  r>)|| 
                        supposing  \muparrow{}isl(effect  <s,  r>))
            {}\mRightarrow{}  (\mforall{}pf:proof-tree(Sequent;Rule;effect).  Q[pf]))



Date html generated: 2018_05_21-PM-06_28_50
Last ObjectModification: 2018_05_19-PM-04_40_00

Theory : general


Home Index