Nuprl Lemma : pi_prefix_ind_wf
∀[A:Type]. ∀[R:A ⟶ pi_prefix() ⟶ ℙ]. ∀[v:pi_prefix()]. ∀[send:chan:Name ⟶ var:Name ⟶ {x:A| R[x;pisend(chan;var)]} ].
∀[rcv:chan:Name ⟶ var:Name ⟶ {x:A| R[x;pircv(chan;var)]} ].
  (pi_prefix_ind(v;
                 pisend(chan,var)⇒ send[chan;var];
                 pircv(chan,var)⇒ rcv[chan;var])  ∈ {x:A| R[x;v]} )
Proof
Definitions occuring in Statement : 
pi_prefix_ind: pi_prefix_ind, 
pircv: pircv(chan;var), 
pisend: pisend(chan;var), 
pi_prefix: pi_prefix(), 
name: Name, 
uall: ∀[x:A]. B[x], 
prop: ℙ, 
so_apply: x[s1;s2], 
member: t ∈ T, 
set: {x:A| B[x]} , 
function: x:A ⟶ B[x], 
universe: Type
Definitions unfolded in proof : 
uall: ∀[x:A]. B[x], 
member: t ∈ T, 
pi_prefix_ind: pi_prefix_ind, 
so_apply: x[s1;s2], 
pi_prefix-definition, 
pi_prefix-induction, 
pi_prefix-ext, 
ext-eq_weakening, 
eq_atom: x =a y, 
bool_cases_sqequal, 
eqff_to_assert, 
any: any x, 
btrue: tt, 
bfalse: ff, 
it: ⋅, 
top: Top, 
all: ∀x:A. B[x], 
implies: P ⇒ Q, 
has-value: (a)↓, 
so_lambda: so_lambda(x,y,z,w.t[x; y; z; w]), 
so_apply: x[s1;s2;s3;s4], 
so_lambda: λ2x.t[x], 
so_apply: x[s], 
uimplies: b supposing a, 
strict4: strict4(F), 
and: P ∧ Q, 
prop: ℙ, 
guard: {T}, 
or: P ∨ Q, 
squash: ↓T, 
subtype_rel: A ⊆r B
Latex:
\mforall{}[A:Type].  \mforall{}[R:A  {}\mrightarrow{}  pi\_prefix()  {}\mrightarrow{}  \mBbbP{}].  \mforall{}[v:pi\_prefix()].  \mforall{}[send:chan:Name
                                                                                                                                {}\mrightarrow{}  var:Name
                                                                                                                                {}\mrightarrow{}  \{x:A|  R[x;pisend(chan;var)]\}  ].
\mforall{}[rcv:chan:Name  {}\mrightarrow{}  var:Name  {}\mrightarrow{}  \{x:A|  R[x;pircv(chan;var)]\}  ].
    (pi\_prefix\_ind(v;
                                  pisend(chan,var){}\mRightarrow{}  send[chan;var];
                                  pircv(chan,var){}\mRightarrow{}  rcv[chan;var])    \mmember{}  \{x:A|  R[x;v]\}  )
Date html generated:
2016_05_17-AM-11_20_23
Last ObjectModification:
2016_01_18-AM-07_49_11
Theory : event-logic-applications
Home
Index