 reserve A for non empty Subset of REAL;

theorem
  for a,b,c be Real, f be Function of REAL,REAL st
    b > 0 & c > 0 &
  (for x be Real holds f.x = b-|. b*(x-a)/c .|) holds
    f = AffineMap (b/c,b-a*b/c) | ]. -infty,a .]
     +* AffineMap (-b/c,b+a*b/c) | [. a,+infty .[
proof
 let a,b,c be Real;
 let f be Function of REAL,REAL;
 assume A1: b > 0;
 assume A2: c > 0;
 assume A3: for x be Real holds f.x = b-|. b*(x-a)/c .|;
  INF: -infty < a & a < +infty by XXREAL_0:9,XXREAL_0:12,XREAL_0:def 1;
  D1a: dom (AffineMap (b/c,b-a*b/c) | ]. -infty,a .]
 +* AffineMap (-b/c,b+a*b/c) | [. a,+infty .[ )
  = dom (AffineMap (b/c,b-a*b/c) | ]. -infty,a .])
 \/ dom(AffineMap (-b/c,b+a*b/c) | [. a,+infty .[ ) by FUNCT_4:def 1
.= ].-infty,a.] \/ dom( AffineMap (-b/c,b+a*b/c) | [. a,+infty .[ )
    by FUNCT_2:def 1
.= ].-infty,a.] \/ [.a,+infty.[ by FUNCT_2:def 1
.= ].-infty,+infty.[ by XXREAL_1:172,INF;
 for x being object st x in dom f holds
 f.x = (AffineMap (b/c,b-a*b/c) | ]. -infty,a .]
 +* AffineMap (-b/c,b+a*b/c) | [. a,+infty .[).x
 proof
   let x be object;
   assume x in dom f; then
   reconsider x as Element of REAL;
   f.x = b-|. b*(x-a)/c .| by A3;
   hence thesis by Th1,A1,A2;
 end;
 hence thesis by FUNCT_1:2,D1a,XXREAL_1:224,FUNCT_2:52;
end;
