reserve x, y, z, s for ExtReal;
reserve i, j for Integer;
reserve n, m for Nat;
reserve x, y, v, u for ExtInt;
reserve
  D for non empty doubleLoopStr,
  A for Subset of D;
reserve K for Field-like non degenerated
  associative add-associative right_zeroed right_complementable
  distributive Abelian non empty doubleLoopStr,
  a, b, c for Element of K;
reserve v for Valuation of K;

theorem Th27:
  K is having_valuation implies min(v.a,v.b) <= v.(a+b)
  proof
    assume
A1: K is having_valuation;
    per cases;
    suppose
A2:   a = 0.K;
      then v.a = +infty by A1,Def8;
      then min(v.a,v.b) = v.b by XXREAL_0:42;
      hence min(v.a,v.b) <= v.(a+b) by A2,RLVECT_1:def 4;
    end;
    suppose
A3:   b = 0.K;
      then v.b = +infty by A1,Def8;
      then min(v.a,v.b) = v.a by XXREAL_0:42;
      hence min(v.a,v.b) <= v.(a+b) by A3,RLVECT_1:def 4;
    end;
    suppose that
A4:   a <> 0.K and
A5:   0 <= v.(b/a);
      v.a <= v.b by A1,A4,A5,Th24;
      then
A6:   min(v.a,v.b) = v.a by XXREAL_0:def 9;
      0 <= v.(1.K+b/a) by A5,A1,Def8;
      then
A7:   0 + v.a <= v.(1.K+b/a) + v.a by XXREAL_3:36;
      v.(1.K+b/a) + v.a = v.((1.K+b/a)* a) by A1,Def8
      .= v.((1.K*a + b/a*a)) by VECTSP_1:def 3
      .= v.(a + b/a*a)
      .= v.(a + b) by A4,VECTSP_2:22;
      hence min(v.a,v.b) <= v.(a+b) by A6,A7,XXREAL_3:4;
    end;
    suppose that
A8:   a <> 0.K and
A9:   b <> 0.K and
A10:  v.(b/a) <= 0;
A11:  0 <= v.(a/b) by A1,A8,A9,A10,Th25;
      v.b <= v.a by A1,A8,A10,Th26;
      then
A12:  min(v.a,v.b) = v.b by XXREAL_0:def 9;
      0 <= v.(1.K+a/b) by A11,A1,Def8;
      then
A13:  0 + v.b <= v.(1.K+a/b) + v.b by XXREAL_3:36;
      v.(1.K+a/b) + v.b = v.((1.K+a/b)* b) by A1,Def8
      .= v.((1.K*b + a/b*b)) by VECTSP_1:def 3
      .= v.(b + a/b*b)
      .= v.(b + a) by A9,VECTSP_2:22;
      hence min(v.a,v.b) <= v.(a+b) by A12,A13,XXREAL_3:4;
    end;
  end;
