let R be gcdDomain; for Amp being AmpleSet of R
for a, b, c being Element of R holds gcd (gcd a,b,Amp),c,Amp = gcd a,(gcd b,c,Amp),Amp
let Amp be AmpleSet of R; for a, b, c being Element of R holds gcd (gcd a,b,Amp),c,Amp = gcd a,(gcd b,c,Amp),Amp
let A, B, C be Element of R; gcd (gcd A,B,Amp),C,Amp = gcd A,(gcd B,C,Amp),Amp
set D = gcd (gcd A,B,Amp),C,Amp;
set E = gcd A,(gcd B,C,Amp),Amp;
A1:
gcd (gcd A,B,Amp),C,Amp divides C
by Def12;
A2:
gcd A,(gcd B,C,Amp),Amp divides A
by Def12;
A3:
gcd A,(gcd B,C,Amp),Amp divides gcd B,C,Amp
by Def12;
then A4:
gcd A,(gcd B,C,Amp),Amp divides C
by Th29;
gcd A,(gcd B,C,Amp),Amp divides B
by A3, Th29;
then
gcd A,(gcd B,C,Amp),Amp divides gcd A,B,Amp
by A2, Def12;
then A5:
gcd A,(gcd B,C,Amp),Amp divides gcd (gcd A,B,Amp),C,Amp
by A4, Def12;
A6:
( gcd (gcd A,B,Amp),C,Amp is Element of Amp & gcd A,(gcd B,C,Amp),Amp is Element of Amp )
by Def12;
A7:
gcd (gcd A,B,Amp),C,Amp divides gcd A,B,Amp
by Def12;
then A8:
gcd (gcd A,B,Amp),C,Amp divides A
by Th29;
gcd (gcd A,B,Amp),C,Amp divides B
by A7, Th29;
then
gcd (gcd A,B,Amp),C,Amp divides gcd B,C,Amp
by A1, Def12;
then
gcd (gcd A,B,Amp),C,Amp divides gcd A,(gcd B,C,Amp),Amp
by A8, Def12;
then
gcd (gcd A,B,Amp),C,Amp is_associated_to gcd A,(gcd B,C,Amp),Amp
by A5, Def3;
hence
gcd (gcd A,B,Amp),C,Amp = gcd A,(gcd B,C,Amp),Amp
by A6, Th22; verum