File:Square dance equations solved.svg: Difference between revisions

From Elliptic Curve Crypto
No edit summary
 
source code for chart
 
Line 1: Line 1:
<syntaxhighlight lang="R" line="1">
#! /usr/bin/R -f


x_data = seq(-5, 5, 0.01)
Y = function(x) {sqrt(-(x - 4)*(x + 3)*(x^2 + 1))}
svg()
plot( x=c(rev(x_data),x_data), xlab=c("Any 4 points of curve lying on same resolvent parabolic trajectory satisfy resultant","“square dance” equation P (+) Q (+) R (+) S = O with additional “point at infinity” O."),
    y=c(Y(rev(x_data)),-Y(x_data)),
    ylab="Defining algebraic point group operation (+) over a quartic curve:",
    type="l",xlim=c(-3,4),
        main=expression(y^2 == -(x - 4)*(x + 3)*(x^2 + 1)), lwd=3, col="brown")
points(-1/2, 15/4)
points(-1/2, -15/4)
points(-3, 0)
points(-3, -0)
points(4, 0)
points(4, -0)
points(3/5, 102/25)
points(3/5, -102/25)
points(1077/481, 1723260/231361)
points(1077/481, -1723260/231361)
points(-1352/733, 2929542/537289)
points(-1352/733, -2929542/537289)
fm4 <- lm(y ~ 1 + x + I(x^2),
          data.frame(x=c(-1/2,3/5,1077/481),
                    y=c(-15/4,102/25,1723260/231361)))
lines(x_data, fm4$coefficients[[3]]*x_data^2 + fm4$coefficients[[2]]*x_data + fm4$coefficients[[1]], lwd=1.5, col="red")
fm5 <- lm(y ~ 1 + x + I(x^2),
          data.frame(x=c(-1/2,3/5,1077/481),
                    y=c(-15/4,-102/25,1723260/231361)))
lines(x_data, fm5$coefficients[[3]]*x_data^2 + fm5$coefficients[[2]]*x_data + fm5$coefficients[[1]])
fm6 <- lm(y ~ 1 + x + I(x^2),
          data.frame(x=c(-1/2,3/5,1077/481),
                    y=c(-15/4,-102/25,-1723260/231361)))
lines(x_data, fm6$coefficients[[3]]*x_data^2 + fm6$coefficients[[2]]*x_data + fm6$coefficients[[1]], lwd=1.5, col="blue")
</syntaxhighlight>

Latest revision as of 17:37, 5 February 2025

#! /usr/bin/R -f

x_data = seq(-5, 5, 0.01)

Y = function(x) {sqrt(-(x - 4)*(x + 3)*(x^2 + 1))}
svg()
plot( x=c(rev(x_data),x_data), xlab=c("Any 4 points of curve lying on same resolvent parabolic trajectory satisfy resultant","“square dance” equation P (+) Q (+) R (+) S = O with additional “point at infinity” O."),
     y=c(Y(rev(x_data)),-Y(x_data)),
     ylab="Defining algebraic point group operation (+) over a quartic curve:",
     type="l",xlim=c(-3,4),
        main=expression(y^2 == -(x - 4)*(x + 3)*(x^2 + 1)), lwd=3, col="brown")
points(-1/2, 15/4)
points(-1/2, -15/4)
points(-3, 0)
points(-3, -0)
points(4, 0)
points(4, -0)
points(3/5, 102/25)
points(3/5, -102/25)
points(1077/481, 1723260/231361)
points(1077/481, -1723260/231361)
points(-1352/733, 2929542/537289)
points(-1352/733, -2929542/537289)

fm4 <- lm(y ~ 1 + x + I(x^2),
          data.frame(x=c(-1/2,3/5,1077/481),
                     y=c(-15/4,102/25,1723260/231361)))

lines(x_data, fm4$coefficients[[3]]*x_data^2 + fm4$coefficients[[2]]*x_data + fm4$coefficients[[1]], lwd=1.5, col="red")

fm5 <- lm(y ~ 1 + x + I(x^2),
          data.frame(x=c(-1/2,3/5,1077/481),
                     y=c(-15/4,-102/25,1723260/231361)))



lines(x_data, fm5$coefficients[[3]]*x_data^2 + fm5$coefficients[[2]]*x_data + fm5$coefficients[[1]])

fm6 <- lm(y ~ 1 + x + I(x^2),
          data.frame(x=c(-1/2,3/5,1077/481),
                     y=c(-15/4,-102/25,-1723260/231361)))



lines(x_data, fm6$coefficients[[3]]*x_data^2 + fm6$coefficients[[2]]*x_data + fm6$coefficients[[1]], lwd=1.5, col="blue")

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current16:47, 5 February 2025Thumbnail for version as of 16:47, 5 February 2025504 × 504 (162 KB)Rational Point (talk | contribs)

The following page uses this file:

Metadata