In this post we present another compact proof of this remarkable theorem without using **geometry** package.

The proof uses a procedure called **Cc **, which for three points returns a list of the coordinates of the center and the radius of the circumscribed circle.

**restart;**

**Cc:=proc(A,B,C)**

**local x1, y1, x2, y2, x3, y3, x, y;**

**x1,y1:=op(A); x2,y2:=op(B); x3,y3:=op(C);**

**solve({(x2-x1)*(x-(x1+x2)/2)+(y2-y1)*(y-(y1+y2)/2)=0, (x2-x3)*(x-(x2+x3)/2)+(y2-y3)*(y-(y2+y3)/2)=0},{x,y});**

**assign(%);**

**[simplify([x,y]), simplify(sqrt((x-x1)^2+(y-y1)^2))];**

**end proc:**

Proof for arbitrary triangle:

**A, B, C:=[x1,y1], [x2,y2], [x3,y3]:**

**A1, B1, C1, M:=(B+C)/2, (A+C)/2, (A+B)/2, (A+B+C)/3:**

**P1:=Cc(A,M,B1)[1]: P2:=Cc(B1,M,C)[1]: P3:=Cc(C,M,A1)[1]:**

**P4:=Cc(A1,M,B)[1]: P5:=Cc(B,M,C1)[1]: P6:=Cc(C1,M,A)[1]:**

**Cc1:=Cc(P1,P2,P3): Cc2:=Cc(P4,P5,P6):**

**is(Cc1=Cc2);**

** **true