let n be Nat; for D being non empty set
for f being BinominativeFunction of D
for p being PartialPredicate of D st f coincides_with p & <*p,f,p*> is SFHT of D holds
<*p,(iter (f,n)),p*> is SFHT of D
let D be non empty set ; for f being BinominativeFunction of D
for p being PartialPredicate of D st f coincides_with p & <*p,f,p*> is SFHT of D holds
<*p,(iter (f,n)),p*> is SFHT of D
let f be BinominativeFunction of D; for p being PartialPredicate of D st f coincides_with p & <*p,f,p*> is SFHT of D holds
<*p,(iter (f,n)),p*> is SFHT of D
let p be PartialPredicate of D; ( f coincides_with p & <*p,f,p*> is SFHT of D implies <*p,(iter (f,n)),p*> is SFHT of D )
assume that
A1:
f coincides_with p
and
A2:
<*p,f,p*> is SFHT of D
; <*p,(iter (f,n)),p*> is SFHT of D
defpred S1[ Nat] means <*p,(iter (f,$1)),p*> is SFHT of D;
iter (f,0) = id (field f)
by FUNCT_7:68;
then A3:
S1[ 0 ]
by Th14;
A4:
for k being Nat st S1[k] holds
S1[k + 1]
proof
let k be
Nat;
( S1[k] implies S1[k + 1] )
assume A5:
S1[
k]
;
S1[k + 1]
set i =
iter (
f,
(k + 1));
A6:
iter (
f,
(k + 1)) is
BinominativeFunction of
D
by FUNCT_7:86;
for
d being
Element of
D st
d in dom p &
p . d = TRUE &
d in dom (iter (f,(k + 1))) &
(iter (f,(k + 1))) . d in dom p holds
p . ((iter (f,(k + 1))) . d) = TRUE
proof
let d be
Element of
D;
( d in dom p & p . d = TRUE & d in dom (iter (f,(k + 1))) & (iter (f,(k + 1))) . d in dom p implies p . ((iter (f,(k + 1))) . d) = TRUE )
assume that A7:
d in dom p
and A8:
p . d = TRUE
and A9:
d in dom (iter (f,(k + 1)))
and A10:
(iter (f,(k + 1))) . d in dom p
;
p . ((iter (f,(k + 1))) . d) = TRUE
set j =
iter (
f,
k);
A11:
iter (
f,
k) is
BinominativeFunction of
D
by FUNCT_7:86;
A12:
iter (
f,
(k + 1))
= (iter (f,k)) * f
by FUNCT_7:69;
then A13:
(iter (f,(k + 1))) . d = (iter (f,k)) . (f . d)
by A9, FUNCT_1:12;
A14:
d in dom f
by A9, A12, FUNCT_1:11;
A15:
f . d in dom (iter (f,k))
by A9, A12, FUNCT_1:11;
A16:
f . d in dom p
by A1, A7;
p . (f . d) = TRUE
by A1, A2, A7, A8, A14, Th11;
hence
p . ((iter (f,(k + 1))) . d) = TRUE
by A5, A10, A11, A13, A15, A16, Th11;
verum
end;
then
<*p,(iter (f,(k + 1))),p*> in SFHTs D
by A6;
hence
S1[
k + 1]
;
verum
end;
for k being Nat holds S1[k]
from NAT_1:sch 2(A3, A4);
hence
<*p,(iter (f,n)),p*> is SFHT of D
; verum