Theory: process_fix

Parents


Type constants


Term constants


Axioms


Definitions

PROCESS_ORDER
|- !P Q. P << Q = (ALPHA P = ALPHA Q) /\ TRACES P SUBSET TRACES Q
PROCESS_FIX
|- !fun. FIX_PROC fun = (@P. (fun P = P) /\ (!Q. (fun Q = Q) ==> P << Q))
ITER
|- (!f x. ITER 0 f x = x) /\ (!n f x. ITER (SUC n) f x = f (ITER n f x))
IT_UNION
|- !c. IT_UNION c = {x | ?n. x IN c n}
CHAIN
|- !P. CHAIN P = (!n. P n << P (SUC n))
LIM_PROC
|- !P.
     LIM_PROC P =
     (@Q.
       CHAIN P ==>
       (Q = ABS_process (ALPHA (P 0),IT_UNION (\n. TRACES (P n)))))
CONTINUOUS
|- !fun.
     CONTINUOUS fun =
     (!P. CHAIN P ==> (fun (LIM_PROC P) = LIM_PROC (\n. fun (P n))))
MONO_PROCESS
|- !fun. MONO fun = (!p1 p2. p1 << p2 ==> fun p1 << fun p2)

Theorems

EQ_SUB_THM
|- !A B. (A = B) = A SUBSET B /\ B SUBSET A
REFL_PROCESS_ORDER
|- !P. P << P
TRANS_PROCESS_ORDER
|- !P Q R. P << Q /\ Q << R ==> P << R
ANTISYM_PROCESS_ORDER
|- !P Q. P << Q /\ Q << P ==> (P = Q)
CHAIN_EQ_ALPHA
|- !P. CHAIN P ==> (!n m. ALPHA (P n) = ALPHA (P m))
LIM_PROC_THM
|- !P.
     CHAIN P ==>
     (LIM_PROC P = ABS_process (ALPHA (P 0),IT_UNION (\n. TRACES (P n))))
IS_PROCESS_LIMIT
|- !P. CHAIN P ==> IS_PROCESS (ALPHA (P 0),IT_UNION (\n. TRACES (P n)))
ALPHA_LIMIT
|- CHAIN P ==> (ALPHA (LIM_PROC P) = ALPHA (P 0))
TRACES_LIMIT
|- CHAIN P ==> (TRACES (LIM_PROC P) = IT_UNION (\n. TRACES (P n)))
LEAST_PROCESS
|- !A P. (A = ALPHA P) ==> STOP A << P
LUB_CHAIN1
|- !P. CHAIN P ==> (!n. P n << LIM_PROC P)
LUB_CHAIN2
|- !P Q. CHAIN P /\ (!n. P n << Q) ==> LIM_PROC P << Q