Nuprl Lemma : PiDataVal-induction

∀[P:PiDataVal() ⟶ ℙ]
  ((∀id:Id. P[pDVloc(id)])
  ⇒ (∀id:Id. ∀name:Name.  P[pDVloc_tag(id;name)])
  ⇒ (∀from:Id. ∀preList:pi_prefix() List.  P[pDVguards(from;preList)])
  ⇒ (∀val:Name. ∀index:ℕ.  P[pDVmsg(val;index)])
  ⇒ P[pDVfire()]
  ⇒ P[pDVcontinue()]
  ⇒ (∀rndv1:ℕ × Id × ℕ × Name. P[pDVselex(rndv1)])
  ⇒ (∀rndv2:ℕ × Id × ℕ × Name. ∀counter:ℕ.  P[pDVrequest(rndv2;counter)])
  ⇒ {∀x:PiDataVal(). P[x]})


Proof




Definitions occuring in Statement :  pDVrequest: pDVrequest(rndv2;counter),  pDVselex: pDVselex(rndv1),  pDVcontinue: pDVcontinue(),  pDVfire: pDVfire(),  pDVmsg: pDVmsg(val;index),  pDVguards: pDVguards(from;preList),  pDVloc_tag: pDVloc_tag(id;name),  pDVloc: pDVloc(id),  PiDataVal: PiDataVal(),  pi_prefix: pi_prefix(),  Id: Id,  name: Name,  list: T List,  nat: ℕ,  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],  product: x:A × B[x]
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  implies: P ⇒ Q,  guard: {T},  all: ∀x:A. B[x],  member: t ∈ T,  prop: ℙ,  so_lambda: λ2x.t[x],  so_apply: x[s],  PiDataVal: PiDataVal(),  pDVloc: pDVloc(id),  pDVloc_tag: pDVloc_tag(id;name),  pDVguards: pDVguards(from;preList),  pDVmsg: pDVmsg(val;index),  unit: Unit,  it: ⋅,  pDVfire: pDVfire(),  pDVcontinue: pDVcontinue(),  pDVselex: pDVselex(rndv1),  pDVrequest: pDVrequest(rndv2;counter)

Latex:
\mforall{}[P:PiDataVal()  {}\mrightarrow{}  \mBbbP{}]
    ((\mforall{}id:Id.  P[pDVloc(id)])
    {}\mRightarrow{}  (\mforall{}id:Id.  \mforall{}name:Name.    P[pDVloc\_tag(id;name)])
    {}\mRightarrow{}  (\mforall{}from:Id.  \mforall{}preList:pi\_prefix()  List.    P[pDVguards(from;preList)])
    {}\mRightarrow{}  (\mforall{}val:Name.  \mforall{}index:\mBbbN{}.    P[pDVmsg(val;index)])
    {}\mRightarrow{}  P[pDVfire()]
    {}\mRightarrow{}  P[pDVcontinue()]
    {}\mRightarrow{}  (\mforall{}rndv1:\mBbbN{}  \mtimes{}  Id  \mtimes{}  \mBbbN{}  \mtimes{}  Name.  P[pDVselex(rndv1)])
    {}\mRightarrow{}  (\mforall{}rndv2:\mBbbN{}  \mtimes{}  Id  \mtimes{}  \mBbbN{}  \mtimes{}  Name.  \mforall{}counter:\mBbbN{}.    P[pDVrequest(rndv2;counter)])
    {}\mRightarrow{}  \{\mforall{}x:PiDataVal().  P[x]\})



Date html generated: 2016_05_17-AM-11_27_18
Last ObjectModification: 2015_12_29-PM-06_52_44

Theory : event-logic-applications


Home Index