defpred S1[ Nat] means for G being _finite acyclic _Graph st G .order() = $1 & G .order() = (G .size()) + 1 holds
G is connected ;
let G be _finite _Graph; ( G is Tree-like iff ( G is acyclic & G .order() = (G .size()) + 1 ) )
hereby ( G is acyclic & G .order() = (G .size()) + 1 implies G is Tree-like )
defpred S2[
Nat]
means for
T being
_finite Tree-like _Graph st
T .order() = $1 holds
$1
= (T .size()) + 1;
assume A1:
G is
Tree-like
;
( G is acyclic & G .order() = (G .size()) + 1 )hence
G is
acyclic
;
G .order() = (G .size()) + 1now for T being _finite Tree-like _Graph st T .order() = 1 holds
1 = (T .size()) + 1let T be
_finite Tree-like _Graph;
( T .order() = 1 implies 1 = (T .size()) + 1 )set VT =
the_Vertices_of T;
set ET =
the_Edges_of T;
assume
T .order() = 1
;
1 = (T .size()) + 1then
card (the_Vertices_of T) = 1
by GLIB_000:def 24;
then consider v being
object such that A2:
the_Vertices_of T = {v}
by CARD_2:42;
reconsider v =
v as
Vertex of
T by A2, TARSKI:def 1;
now for e being object holds not e in the_Edges_of Tgiven e being
object such that A3:
e in the_Edges_of T
;
contradiction
(the_Target_of T) . e in {v}
by A2, A3, FUNCT_2:5;
then A4:
(the_Target_of T) . e = v
by TARSKI:def 1;
(the_Source_of T) . e in {v}
by A2, A3, FUNCT_2:5;
then
(the_Source_of T) . e = v
by TARSKI:def 1;
then
e Joins v,
v,
T
by A3, A4, GLIB_000:def 13;
then
T .walkOf (
v,
e,
v) is
Cycle-like
by GLIB_001:156;
hence
contradiction
by Def2;
verum end; then
card (the_Edges_of T) = 0
by CARD_1:27, XBOOLE_0:def 1;
then
T .size() = 0
by GLIB_000:def 25;
hence
1
= (T .size()) + 1
;
verum end; then A5:
S2[1]
;
then A9:
for
k being non
zero Nat st
S2[
k] holds
S2[
k + 1]
;
for
k being non
zero Nat holds
S2[
k]
from NAT_1:sch 10(A5, A9);
hence
G .order() = (G .size()) + 1
by A1;
verum
end;
assume that
A10:
G is acyclic
and
A11:
G .order() = (G .size()) + 1
; G is Tree-like
now for k being non zero Element of NAT st ( for G being _finite acyclic _Graph st G .order() = k & G .order() = (G .size()) + 1 holds
G is connected ) holds
for G being _finite acyclic _Graph st G .order() = k + 1 & G .order() = (G .size()) + 1 holds
G is connected let k be non
zero Element of
NAT ;
( ( for G being _finite acyclic _Graph st G .order() = k & G .order() = (G .size()) + 1 holds
G is connected ) implies for G being _finite acyclic _Graph st G .order() = k + 1 & G .order() = (G .size()) + 1 holds
G is connected )assume A12:
for
G being
_finite acyclic _Graph st
G .order() = k &
G .order() = (G .size()) + 1 holds
G is
connected
;
for G being _finite acyclic _Graph st G .order() = k + 1 & G .order() = (G .size()) + 1 holds
G is connected let G be
_finite acyclic _Graph;
( G .order() = k + 1 & G .order() = (G .size()) + 1 implies G is connected )assume that A13:
G .order() = k + 1
and A14:
G .order() = (G .size()) + 1
;
G is connected then reconsider aG =
G as
_finite non
_trivial acyclic _Graph by GLIB_000:26;
the_Edges_of G <> {}
by A13, A14, CARD_1:27, GLIB_000:def 25;
then consider v,
v2 being
Vertex of
aG such that
v <> v2
and A15:
v is
endvertex
and
v2 is
endvertex
and
v2 in aG .reachableFrom v
by Lm23;
set G2 = the
removeVertex of
G,
v;
A16:
(
( the removeVertex of G,v .order()) + 1
= aG .order() &
( the removeVertex of G,v .size()) + (card (v .edgesInOut())) = aG .size() )
by GLIB_000:48;
card (v .edgesInOut()) =
v .degree()
by GLIB_000:19
.=
1
by A15, GLIB_000:def 52
;
then A17:
the
removeVertex of
G,
v is
connected
by A12, A13, A14, A16;
consider e being
object such that A18:
v .edgesInOut() = {e}
and A19:
not
e Joins v,
v,
G
by A15, GLIB_000:def 51;
e in v .edgesInOut()
by A18, TARSKI:def 1;
hence
G is
connected
by A17, A19, Th2;
verum end;
then A20:
for k being non zero Nat st S1[k] holds
S1[k + 1]
;
then A23:
S1[1]
;
for k being non zero Nat holds S1[k]
from NAT_1:sch 10(A23, A20);
then
G is connected
by A10, A11;
hence
G is Tree-like
by A10; verum