let n be Element of NAT ; for I, J being Function holds Shift (I +* J),n = (Shift I,n) +* (Shift J,n)
let I, J be Function; Shift (I +* J),n = (Shift I,n) +* (Shift J,n)
A1:
dom (Shift J,n) = { (m + n) where m is Element of NAT : m in dom J }
by Def12;
A7:
dom (Shift I,n) = { (m + n) where m is Element of NAT : m in dom I }
by Def12;
A8:
(dom (Shift I,n)) \/ (dom (Shift J,n)) = { (m + n) where m is Element of NAT : m in (dom I) \/ (dom J) }
proof
let x be
set ;
TARSKI:def 3 ( not x in { (m + n) where m is Element of NAT : m in (dom I) \/ (dom J) } or x in (dom (Shift I,n)) \/ (dom (Shift J,n)) )
assume
x in { (m + n) where m is Element of NAT : m in (dom I) \/ (dom J) }
;
x in (dom (Shift I,n)) \/ (dom (Shift J,n))
then consider m being
Element of
NAT such that A10:
x = m + n
and A11:
m in (dom I) \/ (dom J)
;
(
m in dom I or
m in dom J )
by A11, XBOOLE_0:def 3;
then
(
x in dom (Shift I,n) or
x in dom (Shift J,n) )
by A1, A7, A10;
hence
x in (dom (Shift I,n)) \/ (dom (Shift J,n))
by XBOOLE_0:def 3;
verum
end;
dom (I +* J) = (dom I) \/ (dom J)
by FUNCT_4:def 1;
then
dom ((Shift I,n) +* (Shift J,n)) = { (m + n) where m is Element of NAT : m in dom (I +* J) }
by A8, FUNCT_4:def 1;
hence
Shift (I +* J),n = (Shift I,n) +* (Shift J,n)
by A2, Def12; verum