Thm*
Auto:Automata(Alph;St).
Fin(Alph) ![]()
Fin(St) ![]()
(
s:St. Dec(
w:Alph*. (Result(Auto)w) = s))
reach_dec
Thm*
Auto:Automata(Alph;St).
Fin(St) & Fin(Alph) ![]()
(
RL:St*.
s:St. (
w:Alph*. (Result(Auto)w) = s) ![]()
mem_f(St;s;RL))
reach_list
Thm*
S:ActionSet(Alph), si:S.car.
Fin(S.car) ![]()
Fin(Alph) ![]()
(
RL:S.car*.
s:S.car. (
w:Alph*. (S:w
si) = s) ![]()
mem_f(S.car;s;RL))
reach_aux
Thm*
S:ActionSet(Alph), si:S.car, nn:
, f:(
nn![]()
Alph), g:(Alph![]()
![]()
nn).
Fin(S.car) ![]()
InvFuns(
nn; Alph; f; g) ![]()
(
n:
.
RL:{y:{x:(S.car*)| 0 < ||x|| & ||x||
n+1 }| y[(||y||-1)] = si }.
(
s:S.car. (
w:Alph*. (S:w
si) = s) ![]()
mem_f(S.car;s;RL))
||RL|| = n+1
& (
i:
||RL||, j:
i.
RL[i] = RL[j])
& (
s:S.car. mem_f(S.car;s;RL) ![]()
(
w:Alph*. (S:w
si) = s))
& (
k:
.
k
nn ![]()
(
RLa:S.car*.
(
i:{1..||RL||
}, a:Alph.
mem_f(S.car;S.act(a,RL[i]);RL)
mem_f(S.car;S.act(a,RL[i]);RLa))
& (
a:Alph.
g(a) < k ![]()
mem_f(S.car;S.act(a,hd(RL));RL)
mem_f(S.car;S.act(a,hd(RL));RLa))
& (
s:S.car. mem_f(S.car;s;RLa) ![]()
(
w:Alph*. (S:w
si) = s)))))
reach_lemma
Thm*
Auto:Automata(Alph;St). Fin(St) ![]()
(
n:![]()
. #(St)=n ) pos_states
In prior sections: finite sets list 3 autom