reserve E,V for set, G,G1,G2 for _Graph, c,c1,c2 for Cardinal, n for Nat;
reserve f for VColoring of G;
reserve g for EColoring of G;

theorem Th85:
  g is proper iff for v being Vertex of G, e1, e2 being object
    st e1 in v.edgesInOut() & e2 in v.edgesInOut() & g.e1 = g.e2 holds e1 = e2
proof
  hereby
    assume A1: g is proper;
    let v be Vertex of G, e1,e2 be object;
    set V = v.edgesInOut();
    assume A2: e1 in V & e2 in V & g.e1 = g.e2;
    V c= the_Edges_of G;
    then V c= dom g by PARTFUN1:def 2;
    then A3: e1 in dom(g|V) & e2 in dom(g|V) by A2, RELAT_1:62;
    then g.e1 = (g|V).e1 & g.e2 = (g|V).e2 by FUNCT_1:47;
    then (g|V).e1 = (g|V).e2 & g|V is one-to-one by A1, A2;
    hence e1 = e2 by A3, FUNCT_1:def 4;
  end;
  assume A4: for v being Vertex of G, e1, e2 being object
    st e1 in v.edgesInOut() & e2 in v.edgesInOut() & g.e1 = g.e2 holds e1 = e2;
  let v be Vertex of G;
  set V = v.edgesInOut();
  now
    let e1,e2 be object;
    assume A5: e1 in dom(g|V) & e2 in dom(g|V) & (g|V).e1 = (g|V).e2;
    then g.e1 = (g|V).e1 & g.e2 = (g|V).e2 by FUNCT_1:47;
    hence e1 = e2 by A5, A4;
  end;
  hence thesis by FUNCT_1:def 4;
end;
