let G be loopless _Graph; :: thesis: ( G is edgeless iff SubtreeRel G = id (G .allTrees()) )
hereby :: thesis: ( SubtreeRel G = id (G .allTrees()) implies G is edgeless )
assume A1: G is edgeless ; :: thesis: SubtreeRel G = id (G .allTrees())
now :: thesis: for x, y being object holds
( ( [x,y] in SubtreeRel G implies ( x in G .allTrees() & x = y ) ) & ( x in G .allTrees() & x = y implies [x,y] in SubtreeRel G ) )
end;
hence SubtreeRel G = id (G .allTrees()) by RELAT_1:def 10; :: thesis: verum
end;
assume A8: SubtreeRel G = id (G .allTrees()) ; :: thesis: G is edgeless
assume not G is edgeless ; :: thesis: contradiction
then reconsider G9 = G as non edgeless _Graph ;
set e = the Edge of G9;
set v = (the_Source_of G9) . the Edge of G9;
set w = (the_Target_of G9) . the Edge of G9;
set V = {((the_Source_of G9) . the Edge of G9),((the_Target_of G9) . the Edge of G9)};
A9: the Edge of G9 Joins (the_Source_of G9) . the Edge of G9,(the_Target_of G9) . the Edge of G9,G9 by GLIB_000:def 13;
reconsider V = {((the_Source_of G9) . the Edge of G9),((the_Target_of G9) . the Edge of G9)} as non empty Subset of (the_Vertices_of G9) ;
set S = the Edge of G9 .--> ((the_Source_of G9) . the Edge of G9);
set T = the Edge of G9 .--> ((the_Target_of G9) . the Edge of G9);
( dom ( the Edge of G9 .--> ((the_Source_of G9) . the Edge of G9)) = dom {[ the Edge of G9,((the_Source_of G9) . the Edge of G9)]} & dom ( the Edge of G9 .--> ((the_Target_of G9) . the Edge of G9)) = dom {[ the Edge of G9,((the_Target_of G9) . the Edge of G9)]} ) by FUNCT_4:82;
then A10: ( dom ( the Edge of G9 .--> ((the_Source_of G9) . the Edge of G9)) = { the Edge of G9} & dom ( the Edge of G9 .--> ((the_Target_of G9) . the Edge of G9)) = { the Edge of G9} ) by RELAT_1:9;
( rng ( the Edge of G9 .--> ((the_Source_of G9) . the Edge of G9)) = {((the_Source_of G9) . the Edge of G9)} & rng ( the Edge of G9 .--> ((the_Target_of G9) . the Edge of G9)) = {((the_Target_of G9) . the Edge of G9)} ) by FUNCOP_1:88;
then reconsider S = the Edge of G9 .--> ((the_Source_of G9) . the Edge of G9), T = the Edge of G9 .--> ((the_Target_of G9) . the Edge of G9) as Function of { the Edge of G9},V by A10, FUNCT_2:2, ZFMISC_1:7;
set H9 = createGraph the Edge of G9;
not the Edge of G9 in G9 .loops() ;
then A11: createGraph the Edge of G9 in G .allTrees() by Th143;
set H8 = the plain inducedSubgraph of (createGraph the Edge of G9),{((the_Source_of G9) . the Edge of G9)};
the_Edges_of (createGraph the Edge of G9) = { the Edge of G9} by Th13;
then A12: the Edge of G9 in the_Edges_of (createGraph the Edge of G9) by TARSKI:def 1;
the Edge of G9 Joins (the_Source_of G9) . the Edge of G9,(the_Target_of G9) . the Edge of G9, createGraph the Edge of G9 by A12, A9, GLIB_000:73;
then A14: (the_Source_of G9) . the Edge of G9 is Vertex of (createGraph the Edge of G9) by GLIB_000:13;
A15: the plain inducedSubgraph of (createGraph the Edge of G9),{((the_Source_of G9) . the Edge of G9)} is Subgraph of G by GLIB_000:43;
( the plain inducedSubgraph of (createGraph the Edge of G9),{((the_Source_of G9) . the Edge of G9)} is loopless & the plain inducedSubgraph of (createGraph the Edge of G9),{((the_Source_of G9) . the Edge of G9)} is _trivial ) by A14;
then A16: ( the plain inducedSubgraph of (createGraph the Edge of G9),{((the_Source_of G9) . the Edge of G9)} is _trivial & the plain inducedSubgraph of (createGraph the Edge of G9),{((the_Source_of G9) . the Edge of G9)} is edgeless ) ;
then A17: the plain inducedSubgraph of (createGraph the Edge of G9),{((the_Source_of G9) . the Edge of G9)} is Tree-like plain Subgraph of G by A15;
A18: the plain inducedSubgraph of (createGraph the Edge of G9),{((the_Source_of G9) . the Edge of G9)} <> createGraph the Edge of G9 by A16;
[ the plain inducedSubgraph of (createGraph the Edge of G9),{((the_Source_of G9) . the Edge of G9)},(createGraph the Edge of G9)] in SubtreeRel G by A11, A17, Th159;
hence contradiction by A18, A8, RELAT_1:def 10; :: thesis: verum