|- ASCII = ii_internalascii0
|- !f a0 a1 a2 a3 a4 a5 a6 a7.
ascii_case f (ASCII a0 a1 a2 a3 a4 a5 a6 a7) = f a0 a1 a2 a3 a4 a5 a6 a7
|- (!a. ii_internal_mk_ascii (ii_internal_dest_ascii a) = a) /\
!r.
(\a0'.
!'ascii'.
(!a0'.
(?a0 a1 a2 a3 a4 a5 a6 a7.
a0' =
(\a0 a1 a2 a3 a4 a5 a6 a7.
CONSTR 0 (a0,a1,a2,a3,a4,a5,a6,a7) (\n. BOTTOM)) a0 a1 a2
a3 a4 a5 a6 a7) ==>
'ascii' a0') ==>
'ascii' a0') r =
(ii_internal_dest_ascii (ii_internal_mk_ascii r) = r)
|- !a0 a1 a2 a3 a4 a5 a6 a7. ascii_size (ASCII a0 a1 a2 a3 a4 a5 a6 a7) = 1
|- ?rep.
TYPE_DEFINITION
(\a0'.
!'ascii'.
(!a0'.
(?a0 a1 a2 a3 a4 a5 a6 a7.
a0' =
(\a0 a1 a2 a3 a4 a5 a6 a7.
CONSTR 0 (a0,a1,a2,a3,a4,a5,a6,a7) (\n. BOTTOM)) a0 a1 a2
a3 a4 a5 a6 a7) ==>
'ascii' a0') ==>
'ascii' a0') rep
|- ii_internalascii0 =
(\a0 a1 a2 a3 a4 a5 a6 a7.
ii_internal_mk_ascii
((\a0 a1 a2 a3 a4 a5 a6 a7.
CONSTR 0 (a0,a1,a2,a3,a4,a5,a6,a7) (\n. BOTTOM)) a0 a1 a2 a3 a4 a5
a6 a7))
|- !a0 a1 a2 a3 a4 a5 a6 a7 a0' a1' a2' a3' a4' a5' a6' a7'.
(ASCII a0 a1 a2 a3 a4 a5 a6 a7 = ASCII a0' a1' a2' a3' a4' a5' a6' a7') =
(a0 = a0') /\ (a1 = a1') /\ (a2 = a2') /\ (a3 = a3') /\ (a4 = a4') /\
(a5 = a5') /\ (a6 = a6') /\ (a7 = a7')
|- !f.
?fn.
!a0 a1 a2 a3 a4 a5 a6 a7.
fn (ASCII a0 a1 a2 a3 a4 a5 a6 a7) = f a0 a1 a2 a3 a4 a5 a6 a7
|- !f' f M' M.
(M = M') /\
(!a0 a1 a2 a3 a4 a5 a6 a7.
(M' = ASCII a0 a1 a2 a3 a4 a5 a6 a7) ==>
(f a0 a1 a2 a3 a4 a5 a6 a7 = f' a0 a1 a2 a3 a4 a5 a6 a7)) ==>
(ascii_case f M = ascii_case f' M')
|- !P. (!b b0 b1 b2 b3 b4 b5 b6. P (ASCII b b0 b1 b2 b3 b4 b5 b6)) ==> !a. P a
|- !a. ?b b0 b1 b2 b3 b4 b5 b6. a = ASCII b b0 b1 b2 b3 b4 b5 b6