
theorem Th3:
  for F being Graph-yielding Function holds
    (F is plain iff rng F is plain) &
    (F is loopless iff rng F is loopless) &
    (F is non-multi iff rng F is non-multi) &
    (F is non-Dmulti iff rng F is non-Dmulti) &
    (F is acyclic iff rng F is acyclic) &
    (F is connected iff rng F is connected) &
    (F is chordal iff rng F is chordal) &
    (F is edgeless iff rng F is edgeless) &
    (F is loopfull iff rng F is loopfull)
proof
  let F be Graph-yielding Function;
  hereby
    assume A1: F is plain;
    now
      let G be _Graph;
      assume G in rng F;
      then consider x being object such that
        A2: x in dom F & F.x = G by FUNCT_1:def 3;
      consider G0 being _Graph such that
        A3: F.x = G0 & G0 is plain by A1, A2, GLIBPRE0:def 1;
      thus G is plain by A2, A3;
    end;
    hence rng F is plain;
  end;
  hereby
    assume A4: rng F is plain;
    now
      let x be object;
      assume A5: x in dom F;
      then reconsider G = F.x as _Graph by GLIB_000:def 53;
      take G;
      G in rng F by A5, FUNCT_1:3;
      hence F.x = G & G is plain by A4;
    end;
    hence F is plain by GLIBPRE0:def 1;
  end;
  hereby
    assume A6: F is loopless;
    now
      let G be _Graph;
      assume G in rng F;
      then consider x being object such that
        A7: x in dom F & F.x = G by FUNCT_1:def 3;
      consider G0 being _Graph such that
        A8: F.x = G0 & G0 is loopless by A6, A7, GLIB_000:def 59;
      thus G is loopless by A7, A8;
    end;
    hence rng F is loopless;
  end;
  hereby
    assume A9: rng F is loopless;
    now
      let x be object;
      assume A10: x in dom F;
      then reconsider G = F.x as _Graph by GLIB_000:def 53;
      take G;
      G in rng F by A10, FUNCT_1:3;
      hence F.x = G & G is loopless by A9;
    end;
    hence F is loopless by GLIB_000:def 59;
  end;
  hereby
    assume A11: F is non-multi;
    now
      let G be _Graph;
      assume G in rng F;
      then consider x being object such that
        A12: x in dom F & F.x = G by FUNCT_1:def 3;
      consider G0 being _Graph such that
        A13: F.x = G0 & G0 is non-multi by A11, A12, GLIB_000:def 62;
      thus G is non-multi by A12, A13;
    end;
    hence rng F is non-multi;
  end;
  hereby
    assume A14: rng F is non-multi;
    now
      let x be object;
      assume A15: x in dom F;
      then reconsider G = F.x as _Graph by GLIB_000:def 53;
      take G;
      G in rng F by A15, FUNCT_1:3;
      hence F.x = G & G is non-multi by A14;
    end;
    hence F is non-multi by GLIB_000:def 62;
  end;
  hereby
    assume A16: F is non-Dmulti;
    now
      let G be _Graph;
      assume G in rng F;
      then consider x being object such that
        A17: x in dom F & F.x = G by FUNCT_1:def 3;
      consider G0 being _Graph such that
        A18: F.x = G0 & G0 is non-Dmulti by A16, A17, GLIB_000:def 63;
      thus G is non-Dmulti by A17, A18;
    end;
    hence rng F is non-Dmulti;
  end;
  hereby
    assume A19: rng F is non-Dmulti;
    now
      let x be object;
      assume A20: x in dom F;
      then reconsider G = F.x as _Graph by GLIB_000:def 53;
      take G;
      G in rng F by A20, FUNCT_1:3;
      hence F.x = G & G is non-Dmulti by A19;
    end;
    hence F is non-Dmulti by GLIB_000:def 63;
  end;
  hereby
    assume A21: F is acyclic;
    now
      let G be _Graph;
      assume G in rng F;
      then consider x being object such that
        A22: x in dom F & F.x = G by FUNCT_1:def 3;
      consider G0 being _Graph such that
        A23: F.x = G0 & G0 is acyclic by A21, A22, GLIB_002:def 13;
      thus G is acyclic by A22, A23;
    end;
    hence rng F is acyclic;
  end;
  hereby
    assume A24: rng F is acyclic;
    now
      let x be object;
      assume A25: x in dom F;
      then reconsider G = F.x as _Graph by GLIB_000:def 53;
      take G;
      G in rng F by A25, FUNCT_1:3;
      hence F.x = G & G is acyclic by A24;
    end;
    hence F is acyclic by GLIB_002:def 13;
  end;
  hereby
    assume A26: F is connected;
    now
      let G be _Graph;
      assume G in rng F;
      then consider x being object such that
        A27: x in dom F & F.x = G by FUNCT_1:def 3;
      consider G0 being _Graph such that
        A28: F.x = G0 & G0 is connected by A26, A27, GLIB_002:def 12;
      thus G is connected by A27, A28;
    end;
    hence rng F is connected;
  end;
  hereby
    assume A29: rng F is connected;
    now
      let x be object;
      assume A30: x in dom F;
      then reconsider G = F.x as _Graph by GLIB_000:def 53;
      take G;
      G in rng F by A30, FUNCT_1:3;
      hence F.x = G & G is connected by A29;
    end;
    hence F is connected by GLIB_002:def 12;
  end;
  hereby
    assume A31: F is chordal;
    now
      let G be _Graph;
      assume G in rng F;
      then consider x being object such that
        A32: x in dom F & F.x = G by FUNCT_1:def 3;
      consider G0 being _Graph such that
        A33: F.x = G0 & G0 is chordal by A31, A32, GLIBPRE0:def 4;
      thus G is chordal by A32, A33;
    end;
    hence rng F is chordal;
  end;
  hereby
    assume A34: rng F is chordal;
    now
      let x be object;
      assume A35: x in dom F;
      then reconsider G = F.x as _Graph by GLIB_000:def 53;
      take G;
      G in rng F by A35, FUNCT_1:3;
      hence F.x = G & G is chordal by A34;
    end;
    hence F is chordal by GLIBPRE0:def 4;
  end;
  hereby
    assume A36: F is edgeless;
    now
      let G be _Graph;
      assume G in rng F;
      then consider x being object such that
        A37: x in dom F & F.x = G by FUNCT_1:def 3;
      consider G0 being _Graph such that
        A38: F.x = G0 & G0 is edgeless by A36, A37, GLIB_008:def 2;
      thus G is edgeless by A37, A38;
    end;
    hence rng F is edgeless;
  end;
  hereby
    assume A39: rng F is edgeless;
    now
      let x be object;
      assume A40: x in dom F;
      then reconsider G = F.x as _Graph by GLIB_000:def 53;
      take G;
      G in rng F by A40, FUNCT_1:3;
      hence F.x = G & G is edgeless by A39;
    end;
    hence F is edgeless by GLIB_008:def 2;
  end;
  hereby
    assume A41: F is loopfull;
    now
      let G be _Graph;
      assume G in rng F;
      then consider x being object such that
        A42: x in dom F & F.x = G by FUNCT_1:def 3;
      consider G0 being _Graph such that
        A43: F.x = G0 & G0 is loopfull by A41, A42, GLIB_012:def 2;
      thus G is loopfull by A42, A43;
    end;
    hence rng F is loopfull;
  end;
  hereby
    assume A44: rng F is loopfull;
    now
      let x be object;
      assume A45: x in dom F;
      then reconsider G = F.x as _Graph by GLIB_000:def 53;
      take G;
      G in rng F by A45, FUNCT_1:3;
      hence F.x = G & G is loopfull by A44;
    end;
    hence F is loopfull by GLIB_012:def 2;
  end;
end;
