now :: thesis: ex G2 being [Weighted] [VLabeled] inducedSubgraph of G,V,E st
( G2 is weight-inheriting & G2 is vlabel-inheriting )
per cases ( ( V is non empty Subset of (the_Vertices_of G) & E c= G .edgesBetween V ) or not V is non empty Subset of (the_Vertices_of G) or not E c= G .edgesBetween V ) ;
suppose A1: ( V is non empty Subset of (the_Vertices_of G) & E c= G .edgesBetween V ) ; :: thesis: ex G2 being [Weighted] [VLabeled] inducedSubgraph of G,V,E st
( G2 is weight-inheriting & G2 is vlabel-inheriting )

set X = the [Weighted] [VLabeled] inducedSubgraph of G,V,E;
set W = (the_Weight_of G) | (the_Edges_of the [Weighted] [VLabeled] inducedSubgraph of G,V,E);
dom (the_Weight_of G) = the_Edges_of G by PARTFUN1:def 2;
then dom ((the_Weight_of G) | (the_Edges_of the [Weighted] [VLabeled] inducedSubgraph of G,V,E)) = the_Edges_of the [Weighted] [VLabeled] inducedSubgraph of G,V,E by RELAT_1:62;
then reconsider W = (the_Weight_of G) | (the_Edges_of the [Weighted] [VLabeled] inducedSubgraph of G,V,E) as ManySortedSet of the_Edges_of the [Weighted] [VLabeled] inducedSubgraph of G,V,E by PARTFUN1:def 2;
set G1 = the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W);
set VL = (the_VLabel_of G) | (the_Vertices_of ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W)));
reconsider VL9 = (the_VLabel_of G) | (the_Vertices_of ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W))) as PartFunc of (dom ((the_VLabel_of G) | (the_Vertices_of ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W))))),(rng ((the_VLabel_of G) | (the_Vertices_of ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W))))) by RELSET_1:4;
reconsider VL9 = VL9 as PartFunc of (the_Vertices_of ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W))),(rng ((the_VLabel_of G) | (the_Vertices_of ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W))))) by RELAT_1:58, RELSET_1:5;
set G2 = ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W)) .set (VLabelSelector,VL9);
A2: ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W)) .set (VLabelSelector,VL9) == the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W) by Lm3;
the [Weighted] [VLabeled] inducedSubgraph of G,V,E == the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W) by Lm3;
then A3: ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W)) .set (VLabelSelector,VL9) == the [Weighted] [VLabeled] inducedSubgraph of G,V,E by A2;
then ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W)) .set (VLabelSelector,VL9) is Subgraph of the [Weighted] [VLabeled] inducedSubgraph of G,V,E by GLIB_000:87;
then reconsider G2 = ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W)) .set (VLabelSelector,VL9) as Subgraph of G by GLIB_000:43;
A4: the_Vertices_of G2 = the_Vertices_of the [Weighted] [VLabeled] inducedSubgraph of G,V,E by A3
.= V by A1, GLIB_000:def 37 ;
the_Edges_of G2 = the_Edges_of the [Weighted] [VLabeled] inducedSubgraph of G,V,E by A3
.= E by A1, GLIB_000:def 37 ;
then reconsider G2 = G2 as [Weighted] [VLabeled] inducedSubgraph of G,V,E by A1, A4, GLIB_000:def 37;
take G2 = G2; :: thesis: ( G2 is weight-inheriting & G2 is vlabel-inheriting )
the_Weight_of G2 = ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W)) . WeightSelector by GLIB_000:9
.= W by GLIB_000:8
.= (the_Weight_of G) | (the_Edges_of G2) by A3 ;
hence G2 is weight-inheriting ; :: thesis: G2 is vlabel-inheriting
the_VLabel_of G2 = (the_VLabel_of G) | (the_Vertices_of ( the [Weighted] [VLabeled] inducedSubgraph of G,V,E .set (WeightSelector,W))) by GLIB_000:8
.= (the_VLabel_of G) | (the_Vertices_of G2) by A2 ;
hence G2 is vlabel-inheriting ; :: thesis: verum
end;
end;
end;
hence ex b1 being [Weighted] [VLabeled] inducedSubgraph of G,V,E st
( b1 is weight-inheriting & b1 is vlabel-inheriting ) ; :: thesis: verum