let Y be non empty set ; :: thesis: for a, b, c being Element of Funcs Y,BOOLEAN holds (a 'or' b) 'or' c = a 'or' (b 'or' c)
let a, b, c be Element of Funcs Y,BOOLEAN ; :: thesis: (a 'or' b) 'or' c = a 'or' (b 'or' c)
A1: for x being Element of Y holds ((a 'or' b) 'or' c) . x = (a 'or' (b 'or' c)) . x
proof
let x be Element of Y; :: thesis: ((a 'or' b) 'or' c) . x = (a 'or' (b 'or' c)) . x
A2: (a 'or' (b 'or' c)) . x = (a . x) 'or' ((b 'or' c) . x) by Def7;
A3: (a . x) 'or' ((b 'or' c) . x) = (a . x) 'or' ((b . x) 'or' (c . x)) by Def7;
((a . x) 'or' (b . x)) 'or' (c . x) = ((a 'or' b) . x) 'or' (c . x) by Def7;
hence ((a 'or' b) 'or' c) . x = (a 'or' (b 'or' c)) . x by A2, A3, Def7; :: thesis: verum
end;
consider k3 being Function such that
A4: ( (a 'or' b) 'or' c = k3 & dom k3 = Y & rng k3 c= BOOLEAN ) by FUNCT_2:def 2;
consider k4 being Function such that
A5: ( a 'or' (b 'or' c) = k4 & dom k4 = Y & rng k4 c= BOOLEAN ) by FUNCT_2:def 2;
for u being set st u in Y holds
k3 . u = k4 . u by A1, A4, A5;
hence (a 'or' b) 'or' c = a 'or' (b 'or' c) by A4, A5, FUNCT_1:9; :: thesis: verum