reserve x, y, z, v for set,
  n, m, k for Nat;
reserve G, G1, G2, G3 for Graph;
reserve x, y for Element of (the carrier of G);

theorem
  (the Source of G1) tolerates (the Source of G2) &
  (the Target of G1) tolerates (the Target of G2) implies
  bool G1 \/ bool G2 c= bool (G1 \/ G2)
proof
  assume
  A1: (the Source of G1) tolerates (the Source of G2) & (the Target of G1)
  tolerates (the Target of G2);
A2: for v st v in bool G1 holds v in bool (G1 \/ G2)
  proof
    let v;
    assume v in bool G1;
    then reconsider G = v as strict Subgraph of G1 by Def25;
 G c= G1 & G1 c= G1 \/ G2 by A1,Th19;
then  G c= G1 \/ G2 by Th17;
then  G is strict Subgraph of (G1 \/ G2);
    hence thesis by Def25;
  end;
A3: for v st v in bool G2 holds v in bool (G1 \/ G2)
  proof
    let v;
    assume v in bool G2;
    then reconsider G = v as strict Subgraph of G2 by Def25;
 G c= G2 & G2 c= G1 \/ G2 by A1,Th19;
then  G c= G1 \/ G2 by Th17;
then  G is strict Subgraph of (G1 \/ G2);
    hence thesis by Def25;
  end;
    let v be object;
    assume v in bool G1 \/ bool G2;
then  v in bool G1 or v in bool G2 by XBOOLE_0:def 3;
    hence thesis by A2,A3;
end;
