P sur l'axe

O = Intersect(xAxis, yAxis)
ox: y = 0
Y = (4.0779163164666095, 3.8714864356811645)
oy = Line(O, Y)
P = (3.128528675601356, 0.4536877124869057)
P' = Mirror(O, P)
f = Line(P', ox)
g = Line(P', oy)
M = Intersect(ox, g)
N = Intersect(oy, f)
h = Segment(N, M)
i = Segment(N, P')
j = Segment(P', M)
k = AngularBisector(M, O, N)
l = OrthogonalLine(P, h)
U = Intersect(k, h)
V = Intersect(k, l)
I = Midpoint(U, V)
c = Circle(I, U)
d = Semicircle(I, O)
T = Intersect(c, d, 1)
m = Segment(O, T)
e = Circle(O, If[Distance[O, M] ≟ Distance[O, N], M, T])
F', F = Intersect(e, k)
p = Hyperbola(F, F', P)
X = Point(ox)
n = AngularBisector(X, O, Y)
P_0 = Point(n)