let P be _finite non _trivial Path-like _Graph; :: thesis: P .minDegree() = 1
consider p being non empty Graph-yielding _finite Path-like FinSequence such that
A1: ( p . 1 is 2 -vertex & p . 1 is Path-like & p . (len p) = P & (len p) + 1 = P .order() ) and
A2: for n being Element of dom p st n <= (len p) - 1 holds
ex v1, v2 being Vertex of P ex e being object st
( p . (n + 1) is addAdjVertex of p . n,v1,e,v2 & e in (the_Edges_of P) \ (the_Edges_of (p . n)) & ( ( v1 in Endvertices (p . n) & not v2 in the_Vertices_of (p . n) ) or ( not v1 in the_Vertices_of (p . n) & v2 in Endvertices (p . n) ) ) ) by Th25;
defpred S1[ Nat] means for H being _Graph st H = p . ($1 + 1) & $1 <= (len p) - 1 holds
H .minDegree() = 1;
A3: S1[ 0 ]
proof
let H be _Graph; :: thesis: ( H = p . (0 + 1) & 0 <= (len p) - 1 implies H .minDegree() = 1 )
assume ( H = p . (0 + 1) & 0 <= (len p) - 1 ) ; :: thesis: H .minDegree() = 1
then A4: ( H is 2 -vertex & H is Path-like ) by A1;
now :: thesis: ex v being Vertex of H st
( v .degree() = 1 & ( for w being Vertex of H holds v .degree() c= w .degree() ) )
take v = the Vertex of H; :: thesis: ( v .degree() = 1 & ( for w being Vertex of H holds v .degree() c= w .degree() ) )
thus A6: v .degree() = 1 by A4, GLIB_000:174; :: thesis: for w being Vertex of H holds v .degree() c= w .degree()
let w be Vertex of H; :: thesis: v .degree() c= w .degree()
thus v .degree() c= w .degree() by A4, A6, GLIB_000:174; :: thesis: verum
end;
hence H .minDegree() = 1 by GLIB_013:36; :: thesis: verum
end;
A7: for k being Nat st S1[k] holds
S1[k + 1]
proof
let k be Nat; :: thesis: ( S1[k] implies S1[k + 1] )
assume A8: S1[k] ; :: thesis: S1[k + 1]
let H be _Graph; :: thesis: ( H = p . ((k + 1) + 1) & k + 1 <= (len p) - 1 implies H .minDegree() = 1 )
assume A9: ( H = p . ((k + 1) + 1) & k + 1 <= (len p) - 1 ) ; :: thesis: H .minDegree() = 1
(len p) - 1 <= (len p) - 0 by XREAL_1:10;
then A10: k + 1 <= len p by A9, XXREAL_0:2;
0 + 1 <= k + 1 by XREAL_1:6;
then reconsider n = k + 1 as Element of dom p by A10, FINSEQ_3:25;
consider v1, v2 being Vertex of P, e being object such that
A11: H is addAdjVertex of p . n,v1,e,v2 and
A12: e in (the_Edges_of P) \ (the_Edges_of (p . n)) and
A13: ( ( v1 in Endvertices (p . n) & not v2 in the_Vertices_of (p . n) ) or ( not v1 in the_Vertices_of (p . n) & v2 in Endvertices (p . n) ) ) by A2, A9;
(k + 1) - 1 <= (len p) - 1 by A10, XREAL_1:9;
then A14: (p . n) .minDegree() = 1 by A8;
A15: not e in the_Edges_of (p . n) by A12, XBOOLE_0:def 5;
per cases ( ( v1 in Endvertices (p . n) & not v2 in the_Vertices_of (p . n) ) or ( not v1 in the_Vertices_of (p . n) & v2 in Endvertices (p . n) ) ) by A13;
suppose A16: ( v1 in Endvertices (p . n) & not v2 in the_Vertices_of (p . n) ) ; :: thesis: H .minDegree() = 1
then reconsider v1 = v1 as Vertex of (p . n) ;
now :: thesis: ex v2 being Vertex of H st
( v2 .degree() = 1 & ( for w being Vertex of H holds v2 .degree() c= w .degree() ) )
end;
hence H .minDegree() = 1 by GLIB_013:36; :: thesis: verum
end;
suppose A20: ( not v1 in the_Vertices_of (p . n) & v2 in Endvertices (p . n) ) ; :: thesis: H .minDegree() = 1
then reconsider v2 = v2 as Vertex of (p . n) ;
now :: thesis: ex v1 being Vertex of H st
( v1 .degree() = 1 & ( for w being Vertex of H holds v1 .degree() c= w .degree() ) )
end;
hence H .minDegree() = 1 by GLIB_013:36; :: thesis: verum
end;
end;
end;
A24: for k being Nat holds S1[k] from NAT_1:sch 2(A3, A7);
0 < len p ;
then 0 + 1 < (len p) + 1 by XREAL_1:6;
then 1 <= len p by NAT_1:13;
then 1 - 1 <= (len p) - 1 by XREAL_1:9;
then ((len p) -' 1) + 1 = len p by NAT_D:72;
hence P .minDegree() = 1 by A1, A24; :: thesis: verum