If you only need a few points (as in, ~10 to 1000 or so, not billions) on the curve y=x
2 that are equally spaced by arclength, you can just use
Newton's Method. In this case:
x
i+1 = x
i - (f(x
i)-C)/f'(x
i),
where
f(x) = (1/2)*x*sqrt(4x
2 + 1) + (1/4)*sinh
-1(2x),
f'(x) = sqrt(4x
2 + 1),
and C ranges from 0 to 1.48 (or whatever) with step-size 0.01 (or whatever). The initial value x
0 can be anything reasonably close, e.g. x
0=sqrt(C). Five or six iterations of Newton's Method should be enough to converge to 15 decimal places.
Edit: For example, if you let C range from 0.1 to 1.5 with step-size 0.1, the values of the coordinates would be:
C=0.1: (0.099350065839962, 0.009870435582405)
C=0.2: (0.195152616534278, 0.038084543740175)
C=0.3: (0.285211741156551, 0.081345737293551)
C=0.4: (0.368852487493289, 0.136052157529987)
C=0.5: (0.446333885517591, 0.199213937361230)
C=0.6: (0.518289499949421, 0.268624005757821)
C=0.7: (0.585422381047103, 0.342719364230860)
C=0.8: (0.648381539258784, 0.420398620451590)
C=0.9: (0.707726446643927, 0.500876723279239)
C=1.0: (0.763926663317091, 0.583583946926784)
C=1.1: (0.817372952208352, 0.668098543001797)
C=1.2: (0.868390542005625, 0.754102133444823)
C=1.3: (0.917251279891076, 0.841349910461818)
C=1.4: (0.964183813251466, 0.929650425736138)
C=1.5: (1.009381811139016, 1.018851640658280)