reserve G for _Graph;
reserve G2 for _Graph, G1 for Supergraph of G2;
reserve V for set;
reserve v for object;

theorem
  for G2 for v1,v2 being Vertex of G2, e being object
  for G1 being addEdge of G2,v1,e,v2
  st not e in the_Edges_of G2 &
    (for v3, v4 being Vertex of G2 st not v3,v4 are_adjacent holds
      (v3 = v4 or (v1 = v3 & v2 = v4) or (v1 = v4 & v2 = v3)))
  holds G1 is complete
proof
  let G2;
  let v1, v2 be Vertex of G2, e be object;
  let G1 be addEdge of G2,v1,e,v2;
  assume that
    A1: not e in the_Edges_of G2 and
    A2: for v3, v4 being Vertex of G2 st not v3,v4 are_adjacent holds
      (v3 = v4 or (v1 = v3 & v2 = v4) or (v1 = v4 & v2 = v3));
  for u1,u2 being Vertex of G1 st u1 <> u2 holds u1, u2 are_adjacent
  proof
    let u1, u2 be Vertex of G1;
    assume A3: u1 <> u2;
    reconsider u3=u1, u4=u2 as Vertex of G2 by Th108;
    per cases;
    suppose u3,u4 are_adjacent;
      then consider e1 being object such that
        A4: e1 Joins u3,u4,G2 by CHORD:def 3;
      thus thesis by A4, Th74, CHORD:def 3;
    end;
    suppose not u3,u4 are_adjacent;
      then per cases by A2;
      suppose u3 = u4;
        hence thesis by A3;
      end;
      suppose v1 = u3 & v2 = u4;
        then e DJoins u1,u2,G1 by A1, Th109;
        then e Joins u1,u2,G1 by GLIB_000:16;
        hence thesis by CHORD:def 3;
      end;
      suppose v1 = u4 & v2 = u3;
        then e DJoins u2,u1,G1 by A1, Th109;
        then e Joins u1,u2,G1 by GLIB_000:16;
        hence thesis by CHORD:def 3;
      end;
    end;
  end;
  hence thesis by CHORD:def 6;
end;
