Loading [MathJax]/jax/output/SVG/jax.js
Research article Special Issues

Computation of symmetries of rational surfaces

  • Received: 11 September 2024 Revised: 31 October 2024 Accepted: 05 November 2024 Published: 12 November 2024
  • In this paper, we provided, first, a general symbolic algorithm for computing the symmetries of a given rational surface, based on the classical differential invariants of surfaces, i.e., Gauss curvature and mean curvature. In practice, the algorithm works well for sparse parametrizations (e.g., toric surfaces) and PN surfaces. Additionally, we provided a specific, and symbolic, algorithm for computing the symmetries of ruled surfaces. This algorithm works extremely well in practice, since the problem is reduced to that of rational space curves, which can be efficiently solved by using existing methods. The algorithm for ruled surfaces is based on the fact, proven in the paper, that every symmetry of a rational surface must also be a symmetry of its line of striction, which is a rational space curve. The algorithms have been implemented in the computer algebra system Maple, and the implementations have been made public. Evidence of their performance is given in the paper.

    Citation: Juan Gerardo Alcázar, Carlos Hermoso, Hüsnü Anıl Çoban, Uğur Gözütok. Computation of symmetries of rational surfaces[J]. Electronic Research Archive, 2024, 32(11): 6087-6108. doi: 10.3934/era.2024282

    Related Papers:

    [1] Xuanyi Zhao, Jinggai Li, Ying Wang, Chungang Zhu . Improved algorithms for determining the injectivity of 2D and 3D rational Bézier curves. Electronic Research Archive, 2022, 30(5): 1799-1812. doi: 10.3934/era.2022091
    [2] Guo-Niu Han . On the existence of permutations conditioned by certain rational functions. Electronic Research Archive, 2020, 28(1): 149-156. doi: 10.3934/era.2020009
    [3] Han-Cheng Dan, Yongcheng Long, Hui Yao, Songlin Li, Yanhao Liu, Quanfeng Zhou . Investigation on the fractal characteristic of asphalt pavement texture roughness incorporating 3D reconstruction technology. Electronic Research Archive, 2023, 31(4): 2337-2357. doi: 10.3934/era.2023119
    [4] Yangming Xu, Yanpeng Zheng, Xiaoyu Jiang, Zhaolin Jiang, Zhibin Liu . An optimized potential formula of the $ m \times n $ apple surface network and its application of potential in path planning. Electronic Research Archive, 2025, 33(3): 1836-1857. doi: 10.3934/era.2025083
    [5] Dongbao Jia, Zhongxun Xu, Yichen Wang, Rui Ma, Wenzheng Jiang, Yalong Qian, Qianjin Wang, Weixiang Xu . Application of intelligent time series prediction method to dew point forecast. Electronic Research Archive, 2023, 31(5): 2878-2899. doi: 10.3934/era.2023145
    [6] Jin Li, Yongling Cheng . Barycentric rational interpolation method for solving time-dependent fractional convection-diffusion equation. Electronic Research Archive, 2023, 31(7): 4034-4056. doi: 10.3934/era.2023205
    [7] Jin Li, Yongling Cheng . Barycentric rational interpolation method for solving fractional cable equation. Electronic Research Archive, 2023, 31(6): 3649-3665. doi: 10.3934/era.2023185
    [8] Haijun Wang, Jun Pan, Guiyao Ke . Multitudinous potential homoclinic and heteroclinic orbits seized. Electronic Research Archive, 2024, 32(2): 1003-1016. doi: 10.3934/era.2024049
    [9] Michael Barg, Amanda Mangum . Statistical analysis of numerical solutions to constrained phase separation problems. Electronic Research Archive, 2023, 31(1): 229-250. doi: 10.3934/era.2023012
    [10] Jiali Shi, Zhongyi Xiang . Mathematical analysis of nonlinear combination drug delivery. Electronic Research Archive, 2025, 33(3): 1812-1835. doi: 10.3934/era.2025082
  • In this paper, we provided, first, a general symbolic algorithm for computing the symmetries of a given rational surface, based on the classical differential invariants of surfaces, i.e., Gauss curvature and mean curvature. In practice, the algorithm works well for sparse parametrizations (e.g., toric surfaces) and PN surfaces. Additionally, we provided a specific, and symbolic, algorithm for computing the symmetries of ruled surfaces. This algorithm works extremely well in practice, since the problem is reduced to that of rational space curves, which can be efficiently solved by using existing methods. The algorithm for ruled surfaces is based on the fact, proven in the paper, that every symmetry of a rational surface must also be a symmetry of its line of striction, which is a rational space curve. The algorithms have been implemented in the computer algebra system Maple, and the implementations have been made public. Evidence of their performance is given in the paper.



    The topic addressed in this paper is the computation of the Euclidean symmetries of a certain type of algebraic object, namely rational surfaces. Thus, in the rest of this paper, a "symmetry" will mean an isometry of the ambient space that leaves the embedded surface invariant; in particular, such a mapping also leaves invariant the Gauss and mean curvatures of the surface. Capturing the information on the Euclidean symmetries of an object is a natural step if one wants to understand its geometry, visualize it accurately, or store it efficiently. Although in applied mathematics the computation of symmetries has been addressed for decades, with a very wide variety of techniques often involving numerics and statistical methods, in the past fifteen years, there has been a growing interest in applying methods from symbolic computation to this problem. In this sense, in applied mathematics the object to be analyzed is usually a 2D or 3D image, and in practice often a 2D or 3D point cloud, and one seeks approximate symmetries, rather than exact ones. When the problem is seen from the point of view of symbolic computation, which is the perspective we use in this paper, one is attracted toward exact objects with more structure, and looks for their exact symmetries. Typically, the objects considered are (algebraic) varieties defined by polynomials with integer coefficients, either implicitly given, i.e., as zeros of a given set of polynomials, or defined by means of a parametrization with rational components, i.e., quotients of polynomials.

    Although implicitly defined varieties have been addressed (see [1,2,3] for implicit planar curves, and [4,5,6] for implicit surfaces), the case that has attracted more attention has been that of rational curves and surfaces, probably because the rational representation is preferred in computer-aided geometric design, a field where the problem has some relevance. For rational parametric curves, the problem is quite well-understood, and in fact a more general question, namely identifying whether or not two rational curves are affinely or projectively equivalent, has been investigated in many papers. Although a complete list would be long, some notable contributions are [7], on symmetries of space curves, and [5,8], on projective equivalences of rational curves in any dimension; see the bibliographies of these papers for other references. Observe also that isometries and affine equivalences are special instances of projective equivalences.

    However, for rational surfaces the problem is harder, both theoretically and computationally. Here we have two types of contributions, a first group providing more general algorithms, and a second group focused on special types of surfaces whose properties one can exploit. Among the first group, [9] considers involutions of parametric polynomial surfaces, [10] addresses affine and projective equivalences of rational surfaces without projective base points (although base points are not uncommon; note that rational curves do not have base points, which makes the problem easier for curves), and [11], which improves on the results of [10] and provides an algorithm for computing the projective equivalences between two rational surfaces without additional requirements. The algorithm in [11] is certainly very general, but still has some drawbacks: on one hand, the problem is reduced to five possible cases, but only two of them are solved in the paper; on the other hand, the algorithm is involved (check the partial implementation in [12]) and requires a strong background of algebraic geometry, so it is not so easily accessible for readers not familiar with such a topic. Let us also mention that in [10], the input is a polynomial or rational parametrization (in projective form) of a surface, with real coefficients; in [11], the input is a rational parametrization of a surface with coefficients over an algebraically closed field.

    Among the second group of papers, namely papers related to rational surfaces with special properties, one has [13], for canal surfaces, [14], for translational and minimal surfaces, and [5,15], for ruled surfaces; in fact, [14,15] address the more general question of computing affine equivalences, and [5] studies projective equivalences.

    In this paper, we present two contributions to the problem. The first one is a general algorithm which uses the two natural invariants for surfaces, namely Gauss curvature and mean curvature, therefore generalizing to surfaces the idea of [7] for space curves. The algorithm is very easy to implement, although it can be computationally costly. The reason is that the algorithm requires one to compute the resultant of two polynomials derived from the two curvatures; however, while the Gauss curvature of a rational surface is always rational, the mean curvature in general has a square root, so we need to use the square of the mean curvature instead, which increases the degree. If we work with a PN surface, namely a rational surface where the modulus of the normal vector is rational (see for instance [16]), we can skip that part and reduce the computational cost, so the algorithm works better; otherwise, we need very sparse parametrizations. As for a comparison with existing algorithms, compared to [10], projective base points are not a problem for our algorithm, although unlike ours, [10] also works in higher dimension. Compared to [11], our algorithm is much simpler. However, it is true that for non-sparse, non-PN surfaces, the computational cost can be high, so in the cases covered by [10,11] and without further advantages that make our algorithm competitive (e.g., the cases already mentioned or ruled surfaces, see the next paragraph), using [10,11] could be preferrable.

    The second contribution is a specific algorithm for rational ruled surfaces. We prove that every symmetry of a rational ruled surface is a symmetry of the line of striction of the surface, which is a rational space curve. Thus, we reduce the problem to that of space curves, which can be efficiently solved. The resulting algorithm provides better timings than the general algorithm described in the previous paragraph and the algorithm in [15], as we will show with several examples. Compared to [5], it is worth noticing that the algorithm in [5] also reduces the problem to the case of curves. However, there are two main differences with our algorithm: (i) [5] uses rational curves in P5, so the dimension of the curves is higher; (ii) the algorithm in [5] requires one to solve a quadratic system of equations in 7 parameters, which may cause difficulties in some cases (see page 8 of [5]). It is true though that the algorithm in [5] can solve the more general problem of finding the projective equivalences between two ruled surfaces, while our algorithm only aims to compute the symmetries of a given surface.

    The two algorithms presented in the paper have been implemented in Maple, and are available on the website of one of the authors [17]; a Zenodo version is also available [18].

    The structure of the paper is the following. In Section 2, we provide the necessary background to develop our results. The general algorithm is presented in Section 3. The algorithm for ruled surfaces is given in Section 4, where we also analyze the special case of developable surfaces. Section 5 reports on the experimentation carried out on different types of surfaces, general and ruled, using the implementation carried out in Maple; here we also offer some comparative results with the algorithms in [10,11]. We close with our conclusion in Section 6.

    Let x(t,s) be a rational parametrization of a surface SR3. We say that x(t,s) is a proper parametrization of S if the parametrization x, seen as a rational mapping x:R2R3, is birational onto its image, so that the inverse x1 exists and is also rational. Thus, proper mappings are injective except perhaps at a subset of S of dimension at most 1. Checking whether or not a surface parametrization is proper, and reparametrizing it to be proper in the case when it is not, is not easy, but one can always heuristically check properness by taking a random point (t0,s0), and solving x(t,s)=x(t0,s0): if the only solution is t=t0,s=s0, then x(t,s) is proper with high probability.

    The notion of properness also applies to rational parametrizations c(t) of a curve CR3. In this case, however, checking properness and reparametrizing non-proper parametrizations is much easier: once all the components of c(t) have the same denominator, checking properness amounts to computing the gcd of the components of the numerators of c(t)c(s). If the degree of this gcd is 1, then c(t) is proper; if it is not, one can compute a proper reparametrization using the information provided by this gcd. The interested reader can read further on this topic in [19].

    A Euclidean symmetry (also called isometry) of R3 is a mapping f:R3R3, f(x)=Ax+b, where A is an orthogonal 3×3 matrix, so ATA=I with I the identity matrix, and bR3; notice that det(A)=±1. We say that such a mapping f is a symmetry of a surface S (resp., a curve C) if f(S)=S (reap., f(C)=C). When we work with proper, rational parametrizations of curves or surfaces, one can reduce the computation of the symmetries of the curve or surface, if any, to the existence of birational parametrizations in the parameter space, R in the case of curves, and R2 in the case of surfaces, satisfying a certain condition; see the result that follows. For curves, we can go a bit further taking into account that the birational mappings of the real line (and in fact of the projective complex line) are the Möbius transformations, i.e., the mappings

    φ(t)=at+bct+d, adbc0.

    More precisely, we have the following result; see for instance [7] for a proof.

    Proposition 1. Let CR3 be a rational curve defined by a rational, proper parametrization c(t), and let f:R3R3 be a symmetry of C. Then there exists a Möbius transformation φ:RR such that

    fx=xφ, (2.1)

    i.e., making commutative the following diagram:

    (2.2)

    For properly parametrized surfaces, we also have a commutative diagram analogous to Eq (2.2), an observation used in papers like [9,10]. Indeed, if SR3 is a rational surface defined by a rational, proper parametrization x(t,s), and f:R3R3 is a symmetry of S, then there exists a birational mapping ψ:R2R2 making commutative the diagram

    (2.3)

    i.e., such that

    fx=xψ. (2.4)

    Remark 1. In fact, Proposition 1 holds whenever we have a birational transformation, not necessarily a Euclidean symmetry, f:RnRn mapping two rational curves C1,C2 properly parametrized by x1,x2. Similarly, the diagram in Eq (2.3) works also when we have two surfaces S1,S2, properly parametrized, and a birational transformation mapping one of them onto the other. The hypothesis on the properness of the parametrizations is key in both cases.

    Birational mappings of the (projective) plane are called Cremona transformations, and are known to be generated by linear projective mappings and quadratic transformations. However, while the birational mappings of the complex and real line are, exactly, the Möbius transformations, and therefore we have a closed form for them, no closed form is known for the Cremona transformations. This is the reason why in several papers related to the problem treated here, e.g., [9,10,15], one studies rational parametrizations with additional properties so that a general form for the Cremona transformations behind f can be guessed. In [9], under the considered hypotheses, the transformation is linear; in [10], it is linear projective and in [15], the first component of the transformation is a univariate Möbius mapping, while the second component is more complicated, but with a known general form. Notice that, in general, Möbius transformations or Cremona transformations do not preserve the metric.

    Let us briefly recall some notions from differential geometry that will be needed later; we refer to [20,21,22] for more information on this topic.

    Let x(t,s) be a parametrization of a surface SR3. We say that x(t,s) is regular at (t0,s0)R2 if the partial derivatives xt,xs are linearly independent at the point. At regular points P=x(t,s), the tangent plane to S is well-defined and corresponds to

    TP(S)=P+L(xt,xs),

    where L(xt,xs) denotes the linear variety spanned by xt,xs. The normal direction to the tangent plane is therefore that of

    Nx(t,s)=xt×xs. (2.5)

    Additionally, the unitary normal vector is defined as

    nx(t,s)=xt×xsxt×xs. (2.6)

    Notice that if x(t,s) is rational, in general nx(t,s) is not rational, since a square root is expected in the denominator. Additionally, since nx(t,s) is unitary, one can also see nx as a mapping from the surface S onto the unit sphere S2, i.e., nx:SS2; this mapping is called the Gauss map.

    The first fundamental form and the second fundamental form are two symmetric quadratic forms defined at each tangent plane TP(S) of S, with P being regular. The first fundamental form captures the metric of the surface, and is defined by the matrix

    Ix=[EFFG]=[xtxtxtxsxtxsxsxs]. (2.7)

    The second fundamental form captures the local shape of the surface around the point, and is defined by the matrix

    IIx=[LMMN]=[xttnxxtsnxxtsnxxssnx]. (2.8)

    The Weingarten map Wx is the (linear) mapping Wx:TP(S)TP(S) defined as Wx=dnx, i.e., the differential of the Gauss map with a changed sign. The matrix defining Wx is

    Wx=I1xIIx. (2.9)

    The determinant of Wx is the Gauss curvature of the surface, Kx, and the trace of Wx is the mean curvature, Hx. In terms of the entries of the matrices Ix and IIx (see for instance Section 3.4 of [23]),

    Kx=LNM2EGF2, Hx=EN+GL2FM2(EGF2). (2.10)

    Observe that if x(t,s) is rational, Kx is always a rational function. However, in general Hx is not rational because of the presence of a square root (due to the functions L,M, and N in the numerator of the formula for Hx), but H2x is certainly rational.

    Let x(t,s) be a rational, proper parametrization of a surface SR3. Our goal is to provide an algorithm for computing the symmetries f of S, if any. In order to compute the symmetries f, the idea, from the diagram in Eq (2.3), is to first find the Cremona transformations ψ satisfying fx=xψ, and then compute the f themselves. Notice that if f(x)=Ax+b is a symmetry of S, Eq (2.4) yields Ax(t,s)+b=(xψ)(t,s); if ψ is known, one can compute A,b by directly solving the linear system stemming from this equality, or by solving a linear system computed from Ax(t,s)+b=(xψ)(t,s) after giving enough values of (ti,si).

    In order to find ψ, we will use the Gauss curvature Kx and the mean curvature Hx of the parametrization. The first step is to find the relationships between: (ⅰ) Kx,Hx and Kfx,Hfx; (ⅱ) Kx,Hx and Kxψ,Hxψ. In turn, this requires one to see how nx,Ix and IIx are affected when moving from x to fx or xψ. We start with fx.

    Lemma 2. Let x(t,s) be a rational parametrization of a surface S, and let f(x)=Ax+b be a Euclidean symmetry.

    1) Ifx=Ix.

    2) nfx=det(A)Anx.

    3) IIfx=det(A)IIx.

    Proof. To see 1), let ˜x=fx, so ˜x(t,s)=Ax(t,s)+b. Then ˜xt=Axt and ˜xs=Axs. Since A is orthogonal, ˜xt˜xt=xtxt, ˜xt˜xs=xtxs, ˜xs˜xs=xtxt, and 1) follows. To see 2), we observe that

    ˜xtטxs=(Axt)×(Axs)=det(A)AT(xt×xs).

    Since A is orthogonal, AT=A, and therefore ˜xtטxs=det(A)A(xt×xs). Then 2) follows by using Eq (2.6), taking into account that since A is orthogonal, norms are preserved. Finally, for 3), we observe first that ˜xtt=Axtt, ˜xts=Axts and ˜xss=Axss; and then the result follows from the definition of the second fundamental form and statement 2), again taking into account that since A is orthogonal, dot products are preserved.

    Corollary 3. Let x(t,s) be a rational parametrization of a surface S, and let f(x)=Ax+b be a Euclidean symmetry. Then

    Wfx=det(A)Wx,Kfx=KxandHfx=det(A)Hx. (3.1)

    Proof. The equality Wfx=det(A)Wx follows from Eq (2.9), taking into account the statements 1) and 3) of Lemma 2. The remaining equalities follow from the fact that Kfx and Hfx are the determinant and trace of the matrix Wfx.

    Now let us analyze the relationship between Kx,Hx and Kxψ,Hxψ. In order to do this, we need to recall first the relationship between the first and second fundamental forms of x and xψ; this is essentially known, but we include it here for the convenience of the reader. Let us denote y:=xψ, ψ(t,s)=(ψ1(t,s),ψ2(t,s)). Using the Chain Rule,

    yt=xt(ψ)ψ1t+xs(ψ)ψ2t,ys=xt(ψ)ψ1s+xs(ψ)ψ2s, (3.2)

    where yt,ys are evaluated at (t,s), and xt(ψ),xs(ψ) denote the evaluations of xt,xs at ψ(t,s). In matrix notation, we have

    [ytys]=JT[xt(ψ)xs(ψ)],

    where J represents the Jacobian of ψ. Taking Eq (2.7) into account, we get that

    Iy=JTIx(ψ)J,

    where, again, the entries of the first fundamental form at the left-hand side must be evaluated at (t,s), while at the right-hand side, the entries of the form are evaluated at ψ(t,s). To relate ny and nx we also use Eq (3.2). Finally, to relate IIy and IIx we need to differentiate Eq (3.1) again, applying the Chain Rule; although the calculations are lengthy, we get the same result that we obtained for the first fundamental form. So we have the following lemma.

    Lemma 4. Let x(t,s) be a rational parametrization of a surface S, let ψ be a planar rational mapping, and let J be the Jacobian of ψ.

    1) Ixψ=JTIx(ψ)J.

    2) nxψ=det(J)|det(J)|nx(ψ).

    3) IIxψ=JTIIx(ψ)J.

    Now we can prove what we need.

    Corollary 5. Let x(t,s) be a rational parametrization of a surface S, let ψ be a planar birational mapping, and let J be the Jacobian of ψ. Then

    Wxψ=J1Wx(ψ)J, (3.3)

    and

    Kxψ=Kx(ψ),Hxψ=Hx(ψ). (3.4)

    Proof. From Eq (2.9) and statements 1) and 3) of Lemma 4,

    Wxψ=(JTIx(ψ)J)1(JTIIx(ψ)J)=J1I1x(ψ)JTJTIIx(ψ)J,

    and Eq (3.3) is proved. Since from Eq (3.3) the matrices Wxψ, Wx(ψ) are similar, they have the same determinant and trace, and Eq (3.4) follows.

    Finally we reach the following result.

    Proposition 6. Let x(t,s) be a proper parametrization of a surface S, and let f(x)=Ax+b be a Euclidean symmetry of S. Then there exists a birational planar mapping ψ satisfying that fx=xψ, and

    Kx=Kx(ψ),Hx=det(A)Hx(ψ). (3.5)

    Proof. From the diagram in Eq (2.3), there exists a binational mapping ψ such that fx=xψ. By Corollary 3, Kfx=Kx, and by Eq (3.4), Kxψ=Kx(ψ). Since fx=xψ, we get the result for Kx. For Hx, the idea is the same.

    Let us see how to derive an algorithm from Proposition 6 in order to compute the symmetries of S. First, we will use ˆHx=H2x, which is a rational function, instead of Hx. Writing

    Kx(t,s)=Kx(u,v), ˆHx(t,s)=ˆHx(u,v),

    we observe that the above equalities are satisfied, under the hypotheses of Proposition 6, for u=ψ1(t,s), v=ψ2(t,s). Next Kx and ˆHx are rational functions, so after clearing denominators, the above equations lead to

    ξ1(t,s,u,v)=0, ξ2(t,s,u,v)=0, (3.6)

    where ξ1 and ξ2 are two polynomials in the variables t,s,u, and v, the first one coming from Kx, and the second one from ˆHx. By well-known properties of resultants, if t,s,u and v satisfy Eq (3.6) then t,s and u satisfy

    η1(t,s,u)=0, with η1:=Resv(ξ1,ξ2), (3.7)

    and t,s and v satisfy

    η2(t,s,v)=0, with η2:=Resu(ξ1,ξ2). (3.8)

    Now let

    ψ1(t,s)=ψ1,n(t,s)ψ1,d(t,s), ψ2(t,s)=ψ2,n(t,s)ψ2,d(t,s), (3.9)

    where ψi,n,ψi,d, for i=1,2, are polynomials, and gcd(ψi,n,ψi,d)=1 for i=1,2. Then we have the following result.

    Theorem 7. Let x(t,s) be a proper parametrization of a surface S, and let f(x)=Ax+b be a Euclidean symmetry of S. Then there exists a binational planar mapping ψ=(ψ1,ψ2), with components as in Eq (3.9), such that ψ1,d(t,s)uψ1,n(t,s) is a factor of η1(t,s,u), and ψ2,d(t,s)vψ2,n(t,s) is a factor of η2(t,s,v).

    Proof. From the diagram in Eq (2.3), there exists a birational mapping ψ such that fx=xψ. Then for any (t,s), we have that (t,s,ψ1(t,s),ψ2(t,s)) satisfies Eq (3.6), and therefore (t,s,ψ1(t,s)) fulfills Eq (3.7), and (t,s,ψ2(t,s)) fulfills Eq (3.8). Hence, all the points of the surface (in the (t,s,u) space) defined by ψ1,d(t,s)uψ1,n(t,s)=0 are also points of the surface η1(t,s,u)=0. Furthermore, since gcd(ψ1,n,ψ1,d)=1 the polynomial ψ1,d(t,s)uψ1,n(t,s) is irreducible, so by Study's Lemma (see Section 6.13 of [24]), ψ1,d(t,s)uψ1,n(t,s) divides η1(t,s,u). For ψ2,d(t,s)vψ2,n(t,s), we argue in the same way.

    Thus, if, say, η1(t,s,u) is not identically zero, we can look for the factors of η1 which are linear in u, which provides the functions ψ1(t,s), substitute u=ψ1(t,s) into ξ1(t,s,u,v), ξ2(t,s,u,v), and recover v from the linear factor in v of the gcd of the polynomials in t,s,v resulting from that substitution. We might also work with η2(t,s,v), but we do not need to compute both resultants. Notice that in this process it is not necessary to know a priori the form of ψ(t,s). Furthermore, once ψ is known, we can compute f from the equality fx=xψ. This leads to an algorithm, Algorithm 1, for computing the symmetries of S. The algorithm works whenever both resultants η1,η2 are not identically zero, if η1,η2 are both identically zero then either ξ1,ξ2 share a factor, or some of them are identically zero. We can identify some cases where this can happen:

    Gauss curvature being constant: It is well-known that the only surfaces with nonzero constant Gauss curvature K are isometric to the sphere, if K>0, or to the pseudosphere, if K<0. However, the pseudosphere is a surface of revolution whose directrix is a trascendental curve, the tractix, so the pseudosphere is not algebraic. This implies that the only irreducible algebraic surface with constant nonzero Gaussian curvature is the sphere. However, there are algebraic, and in fact rational, surfaces with vanishing Gauss curvature; these surfaces are called developable surfaces, and will come up in the next section.

    Mean curvature being constant: These surfaces certainly exist, and among them we have the remarkable class of surfaces where H=0, called minimal surfaces. Symmetries of rational minimal surfaces are treated in [14].

    Certain functional relationships between the Gauss curvature and the mean curvature: An example is the case of linear Weingarten surfaces (see for instance [25]), which are surfaces where aH+bK=c, for constants a,b and c; this family includes as particular cases surfaces with constant Gauss or mean curvature.

    In these cases the algorithm fails, and an alternative must be used; nevertheless, for developable surfaces we can use the ideas in the next section, and for minimal surfaces we can use [14].

    Example 1. Consider the toy example of the ellipsoid parametrized by

    x(t,s)=(2(s2t2+1)s2+t2+1,2ts2+t2+1,8ss2+t2+1).

    In this case, Algorithm 4 provides 8 symmetries, including the trivial symmetry (the identity), corresponding to the Cremona transformations:

    (tt2+s2,st2+s2), (tt2+s2,st2+s2), (tt2+s2,st2+s2), (tt2+s2,st2+s2),

    and

    (t,s), (t,s), (t,s), (t,s).

    For instance, the symmetry corresponding to the first Cremona transformation, (tt2+s2,st2+s2), is f(x)=Ax with

    A=[100010001].

    Notice in particular that the above Cremona transformation is not linear projective, i.e., its components are not quotients of linear polynomials in t,s.

    Algorithm 1 Rational Surface Symmetries
    Require: A proper parametrization x(t,s) of a surface SR3.
    Ensure: Sym(S).
    1: compute K(t,s), ˆH(t,s), and the polynomials ξ1,ξ2
    2: compute the resultant η1(t,s,u)=Resv(ξ1,ξ2)
    3: if η1 is not identically zero then
    4:    compute the univariate factors in u of η1(t,s,u), and the corresponding functions u=ψ(j)1(t,s)
    5:    for each function ψ(j)1(t,s) do
    6:        substitute u=ψ(j)(t,s) into ξ1,ξ2
    7:        compute the gcd of the polynomials, after the above substitution
    8:        compute the univariate factors in v of the gcd
    9:        compute v=ψ(j)1(t,s) by solving for v in each univariate factor
    10:    end for
    11: else
    12:    compute the resultant η2(t,s,v)=Resu(ξ1,ξ2)
    13:    if η2 is not identically zero then
    14:        proceed as before, with η2
    15:    end if
    16: end if
    17: if η1,η2 are both identically zero then
    18:    return methodfails:zeroresultants
    19: end if
    20: for each couple ψ(j)(t,s)=(ψ(j)1(t,s),ψ(j)2(t,s)) computed in the previous process do
    21:    compute the symmetry f from fx=xψ(j) and return f
    22: end for

    We say that SR3 is ruled if S is covered by lines, called the rulings of the surface. These surfaces are well-known in differential geometry; one can check classical texts like [20,21,22] for further reading on the topic, and also for several facts that we will be using in this subsection.

    If S is rational, then we can always find [26], a rational parametrization of the form

    x(t,s)=u(t)+sv(t), (4.1)

    where u(t),v(t) parametrize space rational curves. The curve defined by u(t) is called the directrix. We refer to Eq (4.1) as a standard parametrization of S, and we will assume the ruled surface S we work with to be parametrized in this way; notice that, regardless of potential reparametrizations of u(t),v(t), a standard parametrization of S is not necessarily unique, since different curves may serve as directrices of the surface.

    A special type of ruled surface, called developable surfaces, is classical in differential geometry, and widely used in applications. Intuitively speaking, developable surfaces are the surfaces that can be "unfolded" onto the plane, so that we can find a dipheomorphic mapping ϕ:SR2 preserving distances.

    Developable surfaces can be characterized as the ruled surfaces with vanishing Gauss curvature. Also, if S is parametrized by Eq (4.1) then S is developable if and only if the mixed product [u(t),v(t),v(t)] is identically zero. This allows us to classify developable surfaces in three types:

    (ⅰ) Cylindrical surfaces: Ruled surfaces where all the rulings are parallel to the same vector. Thus, they can be parametrized as

    x(t,s)=u(t)+sv0, (4.2)

    where v0 is a constant vector.

    (ⅱ) Conical surfaces: These are ruled surfaces where all the rulings intersect at the same point, called the vertex of the surface. By applying, if necessary, a translation so that the vertex coincides with the origin, these surfaces can be parametrized as

    x(t,s)=sv(t). (4.3)

    (ⅲ) Tangential surfaces: Ruled surfaces consisting of the union of tangent lines to the directrix, which can be parametrized as

    x(t,s)=u(t)+su(t). (4.4)

    Cylindrical surfaces and conical surfaces can be recognized, for example, using the algorithm in [27]; furthermore, in those cases we can find the constant direction of the rulings, for cylindrical surfaces, and the vertex, for conical surfaces.

    In order to compute the symmetries of a ruled surface, we also need to recall the notion of a line of striction (see for instance Sections 3–5 of [20] for further information on this notion and its properties). Given a ruled surface S, parametrized as in Eq (4.1), the line of striction E is a parametric space curve c(t), contained in S, such that c(t) is orthogonal to v(t). The expression for the line of striction is

    c(t)=u(t)(v(t)×v(t))(v(t)×u(t))v(t)×v(t)2v(t), (4.5)

    and can be proven to be independent of the directrix considered in Eq (4.1). In particular, if Eq (4.1) is rational then c(t) is also rational. This expression does not make sense for cylindrical surfaces; also, for conical surfaces, the line of striction degenerates into a point. Excluding cylindrical surfaces, we can always assume that S is parametrized as in Eq (4.1), where the directrix is the line of striction. One can check that for tangential developable surfaces, the directrix appearing in Eq (4.4) is already the line of striction.

    The reason why the line of striction is useful in our context is that any symmetry of the surface is also a symmetry of the line of striction. In order to see this, let the directrix u(t) be the line of striction, and let f(x)=Ax+b be a symmetry of S. Then

    ˜x(t,s)=(fx)(t,s)=Ax(t,s)+b=(Au(t)+b)˜u(t)+sAv(t)˜v(t) (4.6)

    also parametrizes S, and we can derive the following theorem.

    Theorem 8. Let f(x)=Ax+b be a symmetry of a ruled surface S, and let E be the line of striction of S. Then f is also a symmetry of E.

    Proof. Assume that the directrix u(t) is the line of striction E. Let us see that the parametrization ˜u(t) in Eq (4.6), which parametrizes the image of E under f, is also a parametrization of E. Indeed,

    ˜u(t)˜v(t)=(Au(t))(Av(t)).

    Since A is an orthogonal matrix, (Au(t))(Av(t))=u(t)v(t)=0. Thus, ˜u(t) satisfies the condition defining the line of striction, parametrized by u(t), so ˜u(t) also parametrizes E. Thus f(E)=E, and the result follows.

    The symmetries of the line of striction can be computed using known algorithms for space rational curves. Thus, whenever the line of striction has finitely many symmetries, we just need to test which ones are also symmetries of S. If the line of striction has infinitely many symmetries, i.e., if the line of striction is either a line or a circle, then we can use the algorithm in the previous section, or other algorithms known for ruled surfaces. Notice that cylindrical and conical surfaces are excluded in this approach.

    Since developable surfaces have zero Gauss curvature, the general algorithm presented in Section 3 is not applicable to them. Also, for two of the subfamilies of developable surfaces, cylindrical and conical surfaces, using the line of striction is not an option, either.

    For cylindrical surfaces, the symmetries of the surface follow from the symmetries of a normal section of the surface, i.e., the intersection of the surface with a plane Π normal to the direction v of the rulings. Because Eq (4.1) is linear in s, the intersection of S with a plane Π normal to the rulings is a rational planar curve, so its symmetries can be computed using known algorithms for rational curves. Notice also that cylindrical surfaces are invariant under translations by any vector parallel to v.

    For conical surfaces, parametrized as in Eq (4.3), we just need to consider symmetries fixing the origin, i.e., symmetries f(x)=Ax, since in Eq (4.3) the origin is the vertex of the surface, which must be kept invariant under any symmetry. Then we can just apply the method in Section 4.1 of [15]. Notice that any symmetry of the curve defined by v(t) (see Eq (4.3)) will also be a symmetry of the surface, but the converse is false (e.g., a cone of revolution, with v(t) corresponding to an ellipse contained in the cone).

    Finally, in the case of tangential developable surfaces, Theorem 8 works without any problem. However, we can go a bit further.

    Proposition 9. Let S be a rational tangential developable surface. Then f:R3R3 is a symmetry of S if and only if f is a symmetry of its line of striction.

    Proof. The implication () is Theorem 8, so let us address (). Thus, let f:R3R3, f(x)=Ax+b be a symmetry of the line of striction of S, let u(t) be a rational parametrization of the line of striction, and let us assume without loss of generality that u(t) is proper. By Proposition 1, Au(t)+b=(uφ)(t), with φ(t) a Möbius transformation. Considering the parametrization of S provided by Eq (4.4),

    (fx)(t,s)=(Au(t)+b)+sAu(t)=(uφ)(t)+sAu(t). (4.7)

    Differentiating Au(t)+b=(uφ)(t) and using the Chain Rule, we deduce that Au(t)=u(φ(t))φ(t). Substituting this into Eq (4.7), we obtain

    (fx)(t,s)=u(φ(t))+su(φ(t))φ(t). (4.8)

    The above equation can be written as

    (fx)(t,s)=u(φ(t))+ψ2(t,s)u(φ(t))=x(φ(t),ψ2(t,s)), (4.9)

    with ψ2(t,s)=sφ(t). Eq (4.9) means, by the diagram in Eq (2.3), that f is a symmetry of S.

    Observe that, for tangential surfaces, the line of striction u(t) cannot be planar, since in that case the surface S is a plane, which is a trivial case. Thus, the number of symmetries of u(t) must be finite.

    In this section, we provide some experimentation on the algorithms given in the previous sections. We have implemented both algorithms in the CAS Maple [28], and tried several examples, using an Intel(R) Core(TM) i7 with a 3.6 GHz processor and 32 Gb RAM. All the examples and implementation can be found in the last author's personal website [17], and also in [18]. We start with the general algorithm described in Section 3, and then move to ruled surfaces and the algorithm given in Section 4.

    In order to test the algorithm for the general case, we consider several surfaces of three different types: toric surfaces, PN surfaces, and conoids; in all these cases, the surfaces have projective base points, so the algorithm in [10] is not applicable. Additionally, we have also considered some examples from the papers [10,11]. As an overall comment, let us mention that most of the time is consumed by the computation of the resultant in Step 2 of Algorithm 1, which is the bottleneck of the algorithm.

    Torics. A toric surface is a surface parametrized by x(t,s)=(tm1sn1,tm2sn2,tm3sn3), where mi,niZ. In Table 1, we provide the computation time (t, in seconds) for detecting symmetries of toric surfaces with various degrees.

    Table 1.  CPU times t (seconds) for toric parametrizations of various degrees.
    Degree Parametrization Symmetries t
    2 (t2,ts,s) 8 0.125
    3 (1s2t,st2,1s) 4 3.391
    4 (t3s,t3s,s) 12 0.156
    5 (t4s,t5s,s) 4 0.188
    6 (t5s,t2s,s) 4 0.094
    7 (t5s2,t3,s3) 12 1.594
    8 (t5s3,t8,s3) 12 0.094
    9 (s,t2s,t9) 8 0.734

     | Show Table
    DownLoad: CSV

    PN surfaces. A PN surface is a rational surface with a rational normal vector field. In the case of PN surfaces, we replace in our algorithm the equation  ˆHx(t,s)=ˆHx(u,v) by  Hx(t,s)=±Hx(u,v). This reduces the degree of the equations in the resultants. In order to generate non-trivial PN surfaces we use the strategy given in [16], where the authors provide a method using quaternions. First, we consider the cubic PN surface (see Figure 1b) given by the following rational parametrization.

    x(t,s)=(13s313s2t+73st2+t353s2+263st+253t213s353s2t53st2+t3133s210st+133t2463s+23t43s34s2t43st24t39s2+143st+53t2103s+263t).
    Figure 1.  Plots of the PN surfaces.

    This PN surface has one projective base point, [3:1:0], and admits two symmetries corresponding to the Cremona transformations

    (35t45s+15,35t45s35),(t,s),

    with symmetries

    f1(x)=(2425725072524250001)x+(9875686750),f2(x)=(100010001)x+(000).

    The whole computation of this example took 0.203 second. Now, consider the cubic PN surface (see Figure 1a) given by the following rational parametrization.

    y(t,s)=(413s+113s211156s3332s4413t613ts952ts2713t2952t2s316t2s259156t3332t4413s21152s3+18s4+2552ts2+413t2152t2s+14t2s2+1952t3+18t4413s+s21778s3+38s4+2813t813ts+2213ts2+3713t2413t2s+34t2s2+13178t3+38t4)

    This PN surface has two projective base points [i:1:0] and [i:1:0]. The surface admits two symmetries corresponding to the Cremona transformations

    (s1213,t1213),(t,s),

    with symmetries

    f1(x)=1169(137962496119722472151)x+128561(3840115202880),f2(x)=(100010001)x+(000).

    The whole computation of this example took 0.125 second.

    Plücker's conoids. Plücker's conoid is a ruled surface defined by the following parametrization

    x(r,θ)=(rcosθ,rsinθ,sin2θ).

    In our tests, we used a generalization of Plücker's conoid, which is again a ruled surface, defined by

    x(r,θ)=(rcosθ,rsinθ,sin2nθ),

    where n>0. Using the fact that

    (cosθ,sinθ)(1t21+t2,2t1+t2),

    and exploiting the Chebychev polynomials of the second kind Uk, we get a rational parametrization of the generalized Plücker's conoid as

    x(t,s)=((1t2)s1+t2,2ts1+t2,2t1+t2Uk(1t21+t2)),

    where k>0 (see Figure 2 for the plots of the surfaces for k{1,2,3,4}). In Table 2, we provide the computation times for detecting symmetries of the generalized Plücker's conoids with various degrees. Notice that any generalized Plücker's conoid has two projective base points, [1:0:0] and [0:1:0].

    Figure 2.  Generalized Plücker's conoids for different values of k.
    Table 2.  CPU times t (seconds) for the generalized Plücker's conoids of various degrees.
    Degree Symmetries t
    4 16 0.360
    6 8 1.203
    8 16 6.407
    10 8 16.812
    12 16 41.500
    14 8 107.391
    16 16 162.469
    18 8 195.578

     | Show Table
    DownLoad: CSV

    Some examples from [10,11].

    We have tried examples of quadratically parametrizable surfaces considered in Section 5.1 of [10]. Following the notation in [10], they are denoted as Σ1,,Σ9, where Σ1,,Σ6 are base-point free (so the algorithm in [10] can be applied), and Σ7,Σ8,Σ9 are not (and the algorithm in [10] cannot be applied). We list the timings in Table 3. We can also find timings in [10], although in the case of [10], the algorithm finds projective mappings leaving the surface invariant, and not only isometries. For Σ1 and Σ2, the timings in [10] are much better. For Σ3 to Σ6, the timings for our algorithm and the one in [10] are comparable. Σ7,Σ8 and Σ9, however, cannot be solved by [10]. In all the cases, the parametrizations have small coefficients.

    Table 3.  Quadratically parametrizable surfaces (see [10]).
    The curve Timing in seconds
    Σ1 50.016
    Σ2 70.344
    Σ3 0.140
    Σ4 0.235
    Σ5 0.688
    Σ6 0.001
    Σ7 1.719
    Σ8 0.053
    Σ9 0.023

     | Show Table
    DownLoad: CSV

    We have also tried some concrete examples of quadratically parametrized surfaces appearing in [10] (see Table 6 in [10]). We provide the timings in Table 4, where the first column reproduces the classification as spelt in [10].

    Table 4.  Some concrete Σis.
    Class of the curve The curve Timing (in seconds)
    321a (t2,s2,t+s) 1.243
    321c (t2,s2+t,s) 0.078
    323 (t2s2,ts,t) 0.363
    331b (t2,s2,ts+t) 5.327
    331c (t2,s2,t+s+ts) 9.243
    332a (t2,s2+t,ts) 0.0781
    332b (t2,s2,tss) 0.095

     | Show Table
    DownLoad: CSV

    As for a comparison with [11], in the GitHub implementation [12] of the algorithm in [11], one can find five examples, concerning the Roman surface (Example 1 in [12]), Veronese-Segre surfaces (Example 2), adjoints to double ruled quadrics (Example 4), the rational normal scroll (Example 5), and conic bundles (Example 6). Out of the five examples, our algorithm can find the 24 symmetries of the first one, the Roman surface

    x(t,s)=(t1+t2+s2,s1+t2+s2,ts1+t2+s2),

    in 50.016 seconds. There are no timings in [11], so here we cannot compare. However, for the remaining four examples, the computations with our algorithm were too costly, meaning that the resultant in Step 2 of Algorithm 1 took too long to compute.

    Here we consider the method in Section 4, which requires us to determine first the line of striction of the surface. Then we apply the method in [7] to find the symmetries of the rational curve defined by the line of striction. In Table 5, we compare the timing (tr) of the algorithm for ruled surfaces in Section 4, the timing (te) of the algorithm given in [15], and the the timing (tg) for the general algorithm given in Section 3. One can see that the method in Section 4 beats the other methods in all cases.

    Table 5.  CPU times (seconds) for symmetries of ruled surfaces given in Table 6.
    Param. Deg. Symm. tr te tg
    x1 9 8 0.156 9.640 >103
    x2 7 1 0.297 1.981 >103
    x3 7 2 0.56 1.888 >103
    x4 5 2 0.016 1.684 902.213
    x5 2 2 0.047 3.448 54.141
    x6 7 2 0.828 1.935 986.213
    x7 6 2 0.063 1.716 626.012
    x8 17 8 0.172 9.828 >103

     | Show Table
    DownLoad: CSV
    Table 6.  Some ruled surfaces and their lines of striction.
    Parametrization Line of striction Plots of surf.
    x1(t,s)=(2t810t610t4+5t2+1t2+1+s(2t512t3+2t)t96t7+6t3+t23t+1t2+1+s(t6+7t47t2+1)t7+3t5+3t3+t+5+s(t2+1)3)
    x2(t,s)=(t7+7t5+3t3t23t+1t2+1+s(t46t2+3)8t6+8t4+2tt2+1+8st3t(t2+1)+2+s(t2+1)2)
    x3(t,s)=(t66t4+t2+2t+s(t56t3+t)t7+6t5t3+t2+t+s(t6+6t4t2+1)t3+t+s(t2+1))
    x4(t,s)=(t2t2+1+stt4t2+1+st3t5t2+1+s)
    x5(t,s)=(4+s(t+1)21+s(t+1)t+s)
    x6(t,s)=(t3t2+1+s(t5+t)t5t2+1+3st7t7t2+12st3)
    x7(t,s)=(t4+t2+t+s(t3+t)t6+t3+st5t5+t3+t2+3t+s(t4+t2+3))
    x8(t,s)=(t176t15+6t116t7+6t3t2t+1t2+1+s(t6+7t47t2+1)2t1610t1410t12+2t10+2t810t610t4+2t2+1t2+1+s(2t512t3+2t)t(t2+1)3(t8+1)+s(t2+1)3)

     | Show Table
    DownLoad: CSV

    Remark 2. The Plücker conoids analyzed in the previous subsection are also ruled surfaces, but their striction lines are straight lines, and therefore the ideas of Section 4 are not useful for that case.

    Remark 3. In Table 5, we have not included the comparison with [5], where no timings are provided. But in any case, as we mentioned in the Introduction to this paper, the algorithm in [5] requires using rational curves in higher dimension (P5) plus a further step involving the solution of a polynomial quadratic system in a high number of variables, namely 7. Thus, one can expect that the timings of [5] are, in general, much higher than ours. Recall, though, that the algorithm in [5] is aimed to the more general problem of finding projective equivalences between ruled surfaces.

    While the problem of computing the symmetries of rational curves, and related questions, has received much attention in the literature, similar problems for rational surfaces still pose several challenges. In this paper, we have provided two algorithms related to this question. The first one is simple, very general, and, at least theoretically, can be applied to a wide variety of parametrizations. However, the computations can be hard, so in practice one requires some kind of advantage in the parametrizations: some cases where the algorithm works well, as we have shown in the experimentation section, are the cases of PN surfaces, toric surfaces, and Plücker conoids. The second algorithm we provide is specific for ruled surfaces, and proceeds by reducing the problem to the case of space curves (which we can solve efficiently) by using the line of striction of the surface. As is also shown in the experimentation section, this last algorithm beats other algorithms that have been considered for the same problem.

    For the general algorithm, the bottleneck of the algorithm is the computation of the resultant of the polynomials derived from the curvatures of the surface. Using the curvatures of the surface is a quite natural idea, so a possibility for further research is to look for strategies to compute this resultant in a more efficient way. In any case, we do not claim that the first algorithm provided in this paper should always be used. Apparently, all the algorithms presented so far to solve the problem considered in this paper have some kind of limitation or drawback. We just intend to contribute to the problem with an algorithm that can be useful in some cases, and perhaps in cases where other algorithms may fail. As for the second algorithm, for ruled surfaces, we dare say that the algorithm is more efficient than the other algorithms presented to this day. Nevertheless, for this second algorithm, it can certainly happen that the line of striction is a line or a circle, in which case we would have infinitely many symmetries to test. In that situation, one should choose an alternative algorithm among the ones reviewed in this paper.

    The ideas presented in this paper can be extended without any effort to compute isometries between rational surfaces, both in the cases of non-ruled and ruled surfaces. As for other generalizations, in order to detect, for instance, affine or projective equivalences between rational surfaces, we would need to replace the Gauss and mean curvature by affine or projective invariants. Finding invariants with the properties that we require, which include a "good" behavior with respect to reparametrizations, is not a trivial task (see [29] for a similar question for curves). So we leave this question here as an open problem.

    The authors declare they have not used Artificial Intelligence (AI) tools in the creation of this article.

    Juan Gerardo Alcázar and Carlos Hermoso are supported by the grant PID2020-113192GB-I00 (Mathematical Visualization: Foundations, Algorithms and Applications) from the Spanish MICINN. Juan G. Alcázar and Carlos Hermoso are also members of the Research Group ASYNACS (Ref. ccee2011/r34). Juan Gerardo Alcázar and Uğur Gözütok are supported by TUBITAK (The Scientific and Technological Research Council of Türkiye) in the scope of 2221-Fellowships for Visiting Scientists and Scientists on Sabbatical Leave. The authors would like to thank the reviewers of the paper for their comments, which allowed us to improve the paper.

    The authors declare there is no conflict of interest.



    [1] J. G. Alcázar, M. Lávička, J. Vršek, Symmetries and similarities of planar algebraic curves using harmonic polynomials, J. Comput. Appl. Math., 357 (2019), 302–318. https://doi.org/10.1016/j.cam.2019.02.036 doi: 10.1016/j.cam.2019.02.036
    [2] P. Lebmair, J. Richter-Gebert, Rotations, translations and symmetry detection for complexified curves, Comput. Aided Geom. Des., 25 (2008), 707–719. https://doi.org/10.1016/j.cagd.2008.09.004 doi: 10.1016/j.cagd.2008.09.004
    [3] P. Lebmair, Feature Detection for Real Plane Algebraic Curves, Ph.D thesis, Universität München, 2009.
    [4] J. G. Alcázar, M. Lávička, J. Vršek, Computing symmetries of implicit algebraic surfaces, Comput. Aided Geom. Des., 104 (2023), 102221. https://doi.org/10.1016/j.cagd.2023.102221 doi: 10.1016/j.cagd.2023.102221
    [5] M. Bizzarri, M. Làvi˘cka, J. Vr˘sek, Computing projective equivalences of special algebraic varieties, J. Comput. Appl. Math., 367 (2020), 112438. https://doi.org/10.1016/j.cam.2019.112438 doi: 10.1016/j.cam.2019.112438
    [6] U. Gözütok, H. A. Çoban, Detecting isometries and symmetries of implicit algebraic surfaces, AIMS Math., 9 (2024), 4294–4308. https://doi.org/10.3934/math.2024212 doi: 10.3934/math.2024212
    [7] J. G. Alcázar, C. Hermoso, G. Muntingh, Symmetry detection of rational space curves from their curvature and torsion, Comput. Aided Geom. Des., 33 (2015), 51–65. https://doi.org/10.1016/j.cagd.2015.01.003 doi: 10.1016/j.cagd.2015.01.003
    [8] M. Hauer, B. Jüttler, Projective and affine symmetries and equivalences of rational curves in arbitrary dimension, J. Symb. Comput., 87 (2018), 68–86. https://doi.org/10.1016/j.jsc.2017.05.009 doi: 10.1016/j.jsc.2017.05.009
    [9] J. G. Alcázar, C. Hermoso, Involutions of polynomially parametrized surfaces, J. Comput. Appl. Math., 294 (2016), 23–38. https://doi.org/10.1016/j.cam.2015.08.002 doi: 10.1016/j.cam.2015.08.002
    [10] M. Hauer, B. Jüttler, J. Schicho, Projective and affine symmetries and equivalences of rational and polynomial surfaces, J. Comput. Appl. Math., 349 (2019), 424–437. https://doi.org/10.1016/j.cam.2018.06.026 doi: 10.1016/j.cam.2018.06.026
    [11] B. Jüttler, N. Lubbes, J. Schicho, Projective isomorphisms between rational surfaces, J. Algebra, 594 (2022), 571–596. https://doi.org/10.1016/j.jalgebra.2021.11.045 doi: 10.1016/j.jalgebra.2021.11.045
    [12] https://github.com/niels-lubbes/surface_equivalence
    [13] J. G. Alcázar, H. Dahl, G. Muntingh, Symmetries of canal surfaces and Dupin cyclides, Comput. Aided Geom. Des., 59 (2018), 68–85. https://doi.org/10.1016/j.cagd.2017.10.001 doi: 10.1016/j.cagd.2017.10.001
    [14] J. G. Alcázar, G. Muntingh, Affine equivalences of surfaces of translation and minimal surfaces, and applications to symmetry detection and design, J. Comput. Appl. Math., 411 (2022), 114206. https://doi.org/10.1016/j.cam.2022.114206 doi: 10.1016/j.cam.2022.114206
    [15] J. G. Alcázar, E. Quintero, Affine equivalences, isometries and symmetries of ruled rational surfaces, J. Comput. Appl. Math., 364 (2020), 112339. https://doi.org/10.1016/j.cam.2019.07.004 doi: 10.1016/j.cam.2019.07.004
    [16] J. Kozak, M. Krajnc, V. Vitrih, A quaternion approach to polynomial PN surfaces, Comput. Aided Geom. Des., 47 (2016), 172–188. https://doi.org/10.1016/j.cagd.2016.05.007 doi: 10.1016/j.cagd.2016.05.007
    [17] https://www.ugurgozutok.com/academics/software
    [18] U. Gözütok, Source Code/Examples for the paper: Computation of symmetries of rational surfaces, Zenodo, 2024. https://doi.org/10.5281/zenodo.13970116
    [19] J. R. Sendra, F. Winkler, S. Pérez-Díaz, Rational Algebraic Curves—A Computer Algebra Approach, Springer, 2008. https://doi.org/10.1007/978-3-540-73725-4
    [20] M. P. Do Carmo, Differential Geometry of Curves and Surfaces, 2nd edition, Courier Dover Publications, 2016.
    [21] A. Gray, Differential Geometry of Curves and Surfaces with Mathematica, CRC Press, 1999.
    [22] D. J. Struik, Lectures on Classical Differential Geometry, Dover Publications, 1998.
    [23] N. M. Patrikalakis, T. Maekawa, Shape Interrogation for Computer Aided Design and Manufacturing, Springer, 2002. https://doi.org/10.1007/978-3-642-04074-0
    [24] G. Fischer, Plane Algebraic Curves, American Mathematical Society, 2001.
    [25] D. Pellis, M. Kilian, H. Pottmann, M. Pauly, Computational design of weingarten surfaces, ACM Trans. Graphics, 40 (2021), 1–11. https://doi.org/10.1145/3450626.3459939 doi: 10.1145/3450626.3459939
    [26] L. Y. Shen, S. Pérez-Díaz, Characterization of rational ruled surfaces, J. Symb. Comput., 63 (2014), 21–45. https://doi.org/10.1016/j.jsc.2013.11.003 doi: 10.1016/j.jsc.2013.11.003
    [27] J. G. Alcázar, R. Goldman, Detecting when an implicit equation or a rational parametrization defines a conical or cylindrical surface, or a surface of revolution, IEEE Trans. Visual Comput. Graphics, 23 (2017), 2550–2559. https://doi.org/10.1109/TVCG.2016.2625786 doi: 10.1109/TVCG.2016.2625786
    [28] MapleTM, Maplesoft, a division of Waterloo Maple Inc. Waterloo, Ontario, 2021.
    [29] U. Gözütok, H. A. Çoban, Y. Sağiroğlu, J. G. Alcázar, A new method to detect projective equivalences and symmetries of 3D rational curves, J. Comput. Appl. Math., 419 (2023), 114782. https://doi.org/10.1016/j.cam.2022.114782 doi: 10.1016/j.cam.2022.114782
  • Reader Comments
  • © 2024 the Author(s), licensee AIMS Press. This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0)
通讯作者: 陈斌, bchen63@163.com
  • 1. 

    沈阳化工大学材料科学与工程学院 沈阳 110142

  1. 本站搜索
  2. 百度学术搜索
  3. 万方数据库搜索
  4. CNKI搜索

Metrics

Article views(654) PDF downloads(49) Cited by(0)

Figures and Tables

Figures(2)  /  Tables(6)

/

DownLoad:  Full-Size Img  PowerPoint
Return
Return

Catalog