532
Views
1
CrossRef citations to date
0
Altmetric
Articles

An algorithm for generating generalized splines on graphs such as complete graphs, complete bipartite graphs and hypercubes

&

Abstract

An edge labeled graph is a graph G whose edges are labeled with non-zero ideals of a commutative ring R. A Generalized Spline on an edge labeled graph G is a vertex labeling of G by elements of the ring R, such that the difference between any two adjacent vertex labels belongs to the ideal corresponding to the edge joining both the vertices. The set of generalized splines forms a subring of the product ring R|V|, with respect to the operations of coordinate-wise addition and multiplication. This ring is known as the generalized spline ring RG, defined on the edge labeled graph G, for the commutative ring R. We have considered particular graphs such as complete graphs, complete bipartite graphs and hypercubes, labeling the edges with the non-zero ideals of an integral domain R and have identified the generalized spline ring RG for these graphs. Also, general algorithms have been developed to find these splines for the above mentioned graphs, for any number of vertices and Python code has been written for finding these splines.

1 Introduction

The term spline refers to a class of functions used in data interpolation by mathematicians. The simplest spline is a piecewise polynomial function, defined over a subdivided domain, satisfying certain number of smoothness conditions at the nodes (control points) of the subdivision. These smooth curves find extensive use in interpolating complex curves, CAGD and also generate approximate solutions to differential equations. With the application of the algebraic, geometric and topological techniques, the analytic study of splines got enriched both in terms of understanding and applicability. Spline Theory developed independently in topology and geometry. Billera Citation[1] pioneered the study of algebraic splines, introducing methods from Commutative Algebra Citation[2]. Haas Citation[3], Rose Citation[4] and others Citation[5–7] studied the homological and algebraic properties of splines.

Algebraically, the set of splines over a subdivision of domains was seen to be a subring of the product ring R×R×R...×R (n copies), where R was the ring of polynomials and n denoted number of subdivisions of the domain. Also, it was observed that the above spline ring was a module over the ring of polynomials. Identifying the dimension and finding suitable bases for the free spline modules became an active area of research for many mathematicians, still remaining far from being completely understood Citation[8,9]. Classical splines were piecewise polynomials on polytopes with certain order of smoothness conditions imposed on the boundary faces [Citation10]. Simcha Gilbert, Shira Polster and Julianna Tymoczko [Citation11], expanded the family of objects on which these splines were defined to arbitrary graphs, which they called the generalized splines. Billera and Rose Citation[4] have shown that the spline rings built on the dual graphs of polytopes were equivalent to the generalized spline rings defined on arbitrary graphs [Citation11]. Handschy, Melmick and Reinders [Citation12] have studied the generalized spline modules on cycle graphs over the ring of integers Z. They have shown the existence of flow-up basis for the spline modules on cycle graphs, thus proving that these spline modules are free. Bowden and Tymoczko [Citation10] considered the module of generalized splines over the quotient ring ZmZ, which is not an integral domain. They have shown that over ZmZ, the minimum generating sets are smaller than expected. In fact, it was proved that over a domain, the module of splines contained a free submodule of rank at least the number of vertices [Citation10]. Handschy, Melmick and Reinders [Citation12] have shown that over a PID the module of splines is free with rank equal to the number of vertices. With these, many interesting properties of the generalized splines were studied, which took into consideration the interplay between the graph theoretic and ring theoretic properties. This opened up the possibility of further exploration in this area, as many open questions were left unanswered in these fields.

We have extended the study further and in this paper, we have addressed the open questions posed by Gilbert, Polster and Tymoczko in [Citation11]. We have constructed nontrivial generalized splines for the special cases, where G is a complete graph, complete bipartite graph and hypercubes. All these graphs find extensive applications in network theory and hence our work is important as it adds to the understanding of the algebraic structures of these graphs. In fact, one of the graphs that we have considered is a n-dimensional hypercube, which is used to understand structures like communication signals, computer networks, computer graphics, space, virus, etc. We have developed a general algorithm to express the ring of generalized splines for hypercubes of any dimension n 2, taking into account the bipartite nature [Citation13] and Hamiltonian property of the graph [Citation14]. Also, Python code was developed which calculated the elements of the generalized spline ring RG, for complete graphs and complete bipartite graphs. Throughout our work, we have considered the ring R to be an integral domain and the edge labels as the non-zero ideals of the ring R.

2 Results & methods used

2.1 Preliminaries

In this section, we give the formal definition of the generalized spline ring RG, for a graph G over a commutative ring R, with the edge labels as the non-zero ideals of the ring R, as discussed in [Citation11]. We then give the fundamental results which describe the algebraic structure of the ring RG, along with examples, which are used to construct new generalized splines for the complete graphs, complete bipartite graphs and hypercubes. Throughout the manuscript, we have used the notations of [Citation11], except in some cases which we have mentioned clearly.

The definition of an edge labeled graph is as follows:

2.1.1 Definition

Let G = (V, E) be a graph. Let R be an arbitrary commutative ring with identity which is also an integral domain and let S denote the set of all non-zero ideals of R. Let a function α : E S be an edge labeling of G by the non-zero ideals of R. Given an edge labeling α, a vertex labeling p : V R is called a generalized spline if pupv is in α(e) for every edge e=uv in E. Let RG denote the set of all generalized splines of (G, α). Then RG is an R-module under the operations of co-ordinate wise addition and scalar multiplication.

The compatibility condition known as “edge conditions” used on the edges are defined as:

2.1.2 Definition

Let G = (V, α) be an edge labeled graph. An element p vV R, expressed as

p = (pv1, pv2, , pvn) satisfies the edge condition at an edge e = vivj if pvipvj α (eij).

The set of splines with the edge conditions is denoted by RG,α. Each element of RG,α is called a generalized spline. If the edge labeling is clear, it is denoted as RG.

We now give the definition of nontrivial generalized spline.

2.1.3 Definition

A nontrivial generalized spline is an element p RG, that is not in the principal ideal R1, where 1 is the identity element in RG defined as 1=(1,1,,1).

The following theorem [Citation11] shows that RG is a ring with unity with the operations of coordinate-wise addition and multiplication.

2.1.4 Theorem

RG is a ring with unity 1, where 1v = 1 for each vertex vV.

It is proved [Citation11] that RG becomes a module over the ring R with the operation of coordinate-wise addition and scalar multiplication where multiplication by rR, gives the element rp=(rpv1,rpv2,,rpvn)RG

(discussed in [Citation11]) are two examples of the ring of generalized splines RC4 and RK4, defined on the 4-cycle C4 and the complete graph K4. Here, R is any commutative ring with unity and (αe) denotes the ideal generated by the single ring element of R.

Fig. 1 Example of a generalized spline on the 4-cycle C4.

Fig. 1 Example of a generalized spline on the 4-cycle C4.

Fig. 2 Example of a generalized spline on the complete graph K4.

Fig. 2 Example of a generalized spline on the complete graph K4.

Thus, p = (0, α1α4,(α1 + α2)α4,(α1 + α2+α3)α4) = (pv1, pv2, pv3, pv4) represents a generalized spline for C4, because the difference pv2pv1=α1α4 (α1), and similarly for other adjacent vertices.

Another example giving a generalized spline for the complete graph K4 is given in . Once again, a generalized spline on K4 will be written as p=(0,α1α4α5α6,α1α4α5α6+α2α4α5α6,α1α4α5α6+α2α4α5α6+α3α4α5α6)=(pv1,pv2,pv3,pv4,pv5,pv6) which satisfies the edge conditions for all pairs of adjacent vertices. As discussed earlier, the set of generalized splines on an edge labeled graph has a ring structure and R-module structure like classical splines. Gilbert, Polster and Tymoczko [Citation11] proved foundational results about the set of generalized splines, completely analyzing the ring of generalized splines for trees. They have obtained the generalized splines for arbitrary cycles and have shown that the study of generalized splines for arbitrary graphs can be reduced to the case of different sub graphs, especially cycles or trees.

Basic problems that arise naturally in the theory of generalized splines is that it focuses on particular examples e.g. a particular choice of the ring R, the graph G and the edge labeling function α which maps the edges to the ideals of the ring R. Also, the module structure of the ring of generalized splines remains far from being understood in terms of freeness and existence of basis or generating set, for an arbitrary choice of the ring R [Citation11]. However, it is not clear how the ring RG will be affected under the graph theoretic constructions such as addition or deletion of vertices.

In the rest of the paper, we have extended the study further and addressed the open question posed by Simcha Gilbert, Shira Polster and Juliana Tymoczko in [Citation11]. We have constructed the ring of generalized splines for the special cases, where G is a complete graph Kn, complete bipartite graph Kn1,n2 and also for the hypercubes Qn. In all these graphs, the ring R is a commutative ring with identity which is also an integral domain and the edge labels are the non-zero ideals of the ring R. Also, the methods of constructing the generalized splines over the complete graphs Kn(for any n) and complete bipartite graphs Kn1,n2 (for any n1, n2) have been generalized and Python code is developed to write these splines. The bipartite structure and Hamiltonicity of the hypercubes (as defined in [Citation13]) are used to find the general algorithm for writing the set of generalized splines RQn (for any n).

We discuss the example of generalized spline ring RC3 over the ring of integers for the cycle graph C3 [Citation15].

2.1.5 Example of generalized integer spline on cycle graph C3

Here the generalized integer spline f = (f1, f2, f3) RC3, where C3 is a 3-cycle with the edge labels a1, a2, a3 where a1, a2 and a3 are natural numbers (see ).

Fig. 3 Example of generalized integer spline on the 3-cycle C3.

Fig. 3 Example of generalized integer spline on the 3-cycle C3.

The vertex labels (f1, f2, f3) belonging to Z × Z × Z satisfy the following conditions f1f2moda1,f2f3moda2andf3f1moda3.

We will refer to the preliminaries in the following subsection, throughout the manuscript.

2.2 Important results on RG

Some of the important results for the generalized spline ring RG, relevant to our work are mentioned in this subsection. The first result is theorem 3.8 from [Citation11], which is as follows:

2.2.1 Theorem

Let Cn be a finite edge labeled cycle, given by vertices v1, v2, …, vn in order. Define the vector p R|V| with pv1pv2pv3pvn1pvn=pvn11111+α1,n00001000110011101111=α1,2α2,3α3,4αn2,n1αn1,n

With arbitrary choices of pv1 R, αi,i+1 α(ei,i+1), and α1,n α (e1,n). Then p is a generalized spline for Cn. The spline p is nontrivial exactly when α1,n and at least one of the αi,i+1 are non-zero.

We have used the following results (corollaries 5.4 and 5.6 from [Citation11]) in proving our results and in obtaining the nontrivial generalized splines for the graphs that we have considered.

2.2.2 Corollary

If G contains any subgraph G for which RG contains a nontrivial generalized spline, then RG also contains a nontrivial generalized spline.

2.2.3 Corollary

Let R be an integral domain. If the graph G contains at least two vertices, then RG contains a nontrivial generalized spline.

We will be using the following result for the cycle graph C3, which is also the complete graph K3 (Theorem 3.8 [Citation11]) to identify the ring RG, for the complete graph Kn, for n 3.

2.3 Generalized splines for complete graphs, Kn,n 3

First we construct nontrivial generalized splines for complete graph K3 []. Here the edges (v1, v2), (v2, v3) and (v3, v1) of the graph K3 are labeled with the non-zero ideals A(1,2), A(2,3) and A(3,1) respectively of the ring R, when R is an integral domain.

Fig. 4 Generalized spline on K3.

Fig. 4 Generalized spline on K3.

It follows from Theorem 3.8 in [Citation11], a generalized spline pK3 on the complete graph K3 is pK3=0α(1,2)α(1,3)(α(1,2)+α(2,3))α(1,3)=pv1pv2pv3

Here we see that pK3 satisfies the edge conditions on K3, because if the vertices vi and vj are adjacent, then pvipvj A(i,j), as α(i,j) is a factor of pvipvj. Here α(i,j) represents any element of the edge ideal A(i,j).

Let RK3 denote the set of all generalized splines of (K3, α).

Since R is an integral domain and each α(i,j) is not equal to zero, RK3 contains non-trivial generalized splines.

Using the above result, we have generated the algorithm for developing the generalized spline for the complete graph Kn, for any n4.

Also, we will be using the edge conditions (Section 2.1.2) to identify the ring RG, where graph G is complete bipartite graph Kn1,n2, for any n1 and n2.

2.4 Generalized splines for complete bipartite graphs, Kn1,n2

We have generated the algorithm for developing the generalized spline for the complete bipartite graphs with the vertex sets V1 containing n1 vertices and V2 containing n2 vertices. We have used similar notations as above, where we denote the edge ideal corresponding to the edge joining the ith and jth vertices by A(i,j) and α(i,j) represents an element of the non-zero ideal A(i,j).

We will be using the edge conditions (Section 2.1.2) to identify the ring RG, where graph G is hypercube Qn, for n2.

2.5 Hypercubes

We have extended the method of writing algorithm for the generalized splines to hypercubes, Qn, for n 2 in Section 3.5. Hypercubes, denoted by Qn, are graphs which find extensive use in coding theory in Computer Science and other areas of Mathematics.

3 Results & discussions

3.1 Complete graphs

In this section, we extend the method of constructing the ring of generalized splines RKn, for any n4 starting with the ring RK3 for the complete graph K3 (Section 2.3). In order to get the graph Kn, we add a new vertex to the graph Kn1 and join the new vertex to the existing n1 vertices in Kn1. In the following constructions we consider the ring R to be a commutative ring with identity and also an integral domain. First we construct the graph K4 from the graph K3 and obtain the set of generalized splines RK4 from the ring RK3.

3.1.1 Complete graph (K4), n = 4

We add the vertex v4 to K3 () and join the new vertex v4 with the vertices v1, v2, v3 of K3 (). The new edges are labeled with the non-zero ideals A(4,1), A(4,2), A(4,3) of integral domain R and α(4,1), α(4,2), α(4,3) are the elements of the respective edge ideals. It can be seen that every vertex label for pK3 RK3 (Section 2.3) is multiplied by the factor α(4,1)α(4,2)α(4,3) to get the corresponding vertex labels for the spline pK4 RK4, where RK4 denotes the set of all generalized splines for the edge labeled graph (K4, α). It is easily verified that if the new vertex v4 is labeled with pv4 = α(4,1)α(4,2)α(4,3), then pK4 becomes a generalized spline for RK4 since the edge conditions are satisfied for the adjacent vertices in K4. So we have pK4=0α(1,2)α(1,3)α(4,1)α(4,2)α(4,3)(α(1,2)+α(2,3))α(1,3)α(4,1)α(4,2)α(4,3)α(4,1)α(4,2)α(4,3)=pv1pv2pv3pv4

Fig. 5 Generalized spline on K4.

Fig. 5 Generalized spline on K4.

pv1pv2 A(1,2), since α(1,2)A(1,2) is a factor of pv1pv2.

Similarly we have pv1pv3A(1,3),sinceα(1,3)is a factor ofpv1pv3pv2pv3A(2,3),sinceα(2,3)is a factor ofpv2pv3pv4pv1A(4,1),sinceα(4,1)is a factor ofpv4pv1pv4pv2A(4,2),sinceα(4,2)is a factor ofpv4pv2pv4pv3A(4,3),sinceα(4,3)is a factor ofpv4pv3

Here pv4 = α(4,1)α(4,2)α(4,3) is non-zero because R is an integral domain. Also since K3 is a sub-graph of K4 and RK3 contains nontrivial generalized splines (Sections 2.2.2, 2.2.3) RK4 also contains nontrivial generalized splines.

Using similar methods, we can identify the ring of generalized splines for the complete graph K5.

[cvskip-5pt]

3.1.2 Complete graph (K5), n = 5

We can get K5 by adding the vertex v5 to K4 and the four edges joining v5 to the four vertices v1, v2, v3, v4 of K4 ().

Fig. 6 Generalized spline on K5.

Fig. 6 Generalized spline on K5.

Then in order to get any element of RK5, we multiply each element of RK4 by α(5, 1)α(5, 2)α(5, 3)α(5, 4) and label the added vertex v5 with the element α(5, 1)α(5, 2)α(5, 3)α(5, 4) R.

Then any element of RK5 will be of the form: pK5=0α(1,2)α(1,3)α(4,1)α(4,2)α(4,3)α(5,1)α(5,2)α(5,3)α(5,4)(α(1,2)+α(2,3))α(1,3)α(4,1)α(4,3)α(5,1)α(5,2)α(5,3)α(5,4)α(4,1)α(4,2)α(4,3)α(5,1)α(5,2)α(5,3)α(5,4)α(5,1)α(5,2)α(5,3)α(5,4)=pv1pv2pv3pv4pv5

Now, we give the algorithm for writing the generalized spline for complete graph Kn, for any n.

3.1.3 Theorem

We obtain the complete graph Kn by adding the nth vertex vn and the edges (vn, v1 ), (vn, v2 ), …, (vn, vn1 ) to the complete graph Kn1. Labeling the new edges with the ideals A(n,1),A(n,2),,A(n,n1), we get the generalized spline ring RKn, with the elements of the type: pKn=0α(1,2)α(1,3)N4Nn(α(1,2)+α(2,3))α(1,3)N4NnN4NnN5NnNn=pv1pv2pv3pv4pv5pvn

Here, the notations N4, N5, …, Nn are as follows: N4=α(4,1)α(4,2)α(4,3)N5=α(5,1)α(5,2)α(5,3)α(5,4)Nn=α(n,1)α(n,2)α(n,n1)

Proof

We use mathematical induction to prove the algorithm. Let the number of vertices in Kn be n. For n = 3, K3 is a cycle graph and it has already been proved in [Citation11] that a generalized spline on K3 is of the form: pK3=0α(1,2)α(1,3)(α(1,2)+α(2,3))α(1,3)=pv1pv2pv3

As discussed before, we get the generalized spline pK4 for the complete graph K4 by adding one vertex and three edges to K3. The ring of generalized splines RK4 will have elements of the type: pK4=0α(1,2)α(1,3)α(4,1)α(4,2)α(4,3)(α(1,2)+α(2,3))α(1,3)α(4,1)α(4,2)α(4,3)α(4,1)α(4,2)α(4,3)=pv1pv2pv3pv4

Clearly, the difference pvipvj of adjacent vertices vi and vj is a multiple of α(i,j)A(i,j), where A(i,j) is the edge label for the edge joining vi and vj. We conclude that pK4 satisfies the edge condition for generalized spline over the graph K4.

Inductive step: Assume that there exists a generalized spline pKn1 for the complete graph Kn1. Then we have generalized spline pKn1 defined as: pKn1=0α(1,2)α(1,3)N4Nn1(α(1,2)+α(2,3))α(1,3)N4Nn1N4Nn1N5Nn1Nn1=pv1pv2pv3pv4pv5pvn1where N4, N5, …, Nn1 are defined as: N4=α(4,1)α(4,2)α(4,3)N5=α(5,1)α(5,2)α(5,3)α(5,4)Nn1=α(n1,1)α(n1,2)α(n1,n2)

Let the vertex ‘vn’ and the new edges joining the vertex vn to the remaining (n1) vertices be added to Kn1 to obtain the complete graph Kn. Let the edge labels of the newly added edges be the ideals A(n,1),A(n,2),,A(n,n1) of the ring R.

Taking the nth vertex label as pvn = α(n,1)α(n,2)....α(n,n1) = Nn, where α(n,j)A(n,j), for j=1,2,.,n1 and multiplying each vertex label of the generalized spline for Kn1 by Nn, we get the generalized spline pKn for Kn as: pKn=0α(1,2)α(1,3)N4N5Nn(α(1,2)+α(2,3))α(1,3)N4N5NnN4N5NnN5N6NnNnwhere Nn = α(n,1)α(n,2)α(n,n1) is the vertex label for the new vertex vn.

Here we can see the difference between the vertex labels of the vertices vn and any of the remaining n1 vertices of Kn1 is a multiple of α(n,j)A(n,j), for j=1,2,.,n1.

Hence, we conclude that pKn satisfies the edge conditions for the generalized spline for Kn.

3.1.4 Python code for Kn

The Python code is given as

Next we discuss the complete bipartite graphs.

3.2 Complete bipartite graphs (Kn1,n2)

Let Kn1,n2 (V1, V2, E) be a complete bipartite graph with vertices partitioned into two disjoint sets V1 and V2, consisting of n1 and n2 vertices respectively. Let R be a commutative ring with unity which is an integral domain and let S denote the set of all non-zero ideals of R.

We now extend our method to develop an algorithm for the elements of the generalized spline ring RKn1,n2, for the complete bipartite graph Kn1,n2. We consider the simple cases for n1, n2 = 1, 2 and 3. The vertices are ordered in the clockwise sense, starting with the first left hand side vertex in the set V1 as the initial vertex.

3.2.1 Complete bipartite graph K1,2 or K2,1

It can be easily seen that p constructed in each of the following situations is a generalized spline since the edge conditions are satisfied by the vertex labels of the adjacent vertices (see ). pK1,2=0α(1,2)α(1,3)=pv1pv2pv3 pK2,1=0α(1,2)α(2,3)0=pv1pv2pv3

Fig. 7 Generalized splines onK1,2 and K2,1.

Fig. 7 Generalized splines onK1,2 and K2,1.

Here the spline pK1,2 is nontrivial since α(1,2) and α(1,3) are non-zero and also the spline pK2,1 is nontrivial since R is an integral domain.

3.2.2 Complete bipartite graph K2,2

With the clockwise ordering of the vertices, we have the generalized spline for the complete bipartite graph K2,2 as follows (see ): pK2,2=0α(1,2)α(4,2)α(4,3)α(1,3)α(4,2)α(4,3)0=pv1pv2pv3pv4Also, since K1,2 or K2,1 is a sub graph of K2,2 and RK1,2, RK2,1 contain nontrivial generalized splines (refer Sections 2.2.2, 2.2.3) RK2,2 also contains nontrivial generalized splines. It can be easily seen that the edge conditions are satisfied by the vertex labels of the adjacent vertices.

Fig. 8 Generalized spline on K2,2.

Fig. 8 Generalized spline on K2,2.

Now we give the generalized spline for the complete bipartite graph K3,3 as follows ():

Fig. 9 Generalized spline on K3,3.

Fig. 9 Generalized spline on K3,3.

Fig. 10 Generalized spline on Kn1,n2.

Fig. 10 Generalized spline on Kn1,n2.

Fig. 11 Hypercubes Q1, Q2 and Q3.

Fig. 11 Hypercubes Q1, Q2 and Q3.

Fig. 12 Hamiltonicity of hypercubes Q2 and Q3.

Fig. 12 Hamiltonicity of hypercubes Q2 and Q3.

Fig. 13 Bipartite structure of Hypercubes Q2 and Q3.

Fig. 13 Bipartite structure of Hypercubes Q2 and Q3.

Fig. 14 Graph of Hypercube Q4.

Fig. 14 Graph of Hypercube Q4.

Fig. 15 Bipartite structure and Hamiltonicity of Hypercube Q4.

Fig. 15 Bipartite structure and Hamiltonicity of Hypercube Q4.

3.3 Complete bipartite graph K3,3

We define N5 and N6 as N5=α(5,2)α(5,3)α(5,4)N6=α(6,2)α(6,3)α(6,4) pK3,3=0α(1,2)N5N6α(1,3)N5N6α(1,4)N5N600=pv1pv2pv3pv4pv5pv6 Next, we consider the general case of complete bipartite graph, where the vertex sets V1 and V2 contain n1 and n2 vertices respectively (see Fig. 10). Here we introduce the notation Nn2+i=α(n2+i,2)α(n2+i,3)α(n2+i,n2+1) for i=2,3,,n1

3.3.1 Theorem

Let Kn1,n2 be a complete bipartite graph with vertices partitioned into two disjoint sets V1 and V2, consisting of n1 and n2 vertices respectively (Fig. 10). Then, ordering the vertices in clockwise sense as before, the following pKn1,n2 gives a generalized spline for the complete bipartite graph Kn1,n2. pKn1,n2=0α(1,2)N(n2+2)N(n2+3)N(n2+n1)α(1,3)N(n2+2)N(n2+3)N(n2+n1)α(1,n2+1)N(n2+2)N(n2+3)N(n2+n1)00=pv1pv2pv3pvn2+1pvn2+n1 where Nn2+i=α(n2+i,2) α(n2+i,3) α(n2+i,n2+1), for i = 2,3, , n1.

Proof

The proof of the above theorem follows from the observation that the difference of the vertex labels of adjacent vertices is a multiple of the elements belonging to the corresponding edge ideals. However, we note that the algorithm for generating a generalized spline for any complete bipartite graph holds only for the particular ordering of the vertices in the clockwise sense.

Here Nn2+i=α(n2+i,2) α(n2+i,3) α(n2+i,n2+1),for i=2,3,,n1 is non-zero since R is an integral domain. Also since Kn11,n21 is sub graph of Kn1,n2 and RKn11,n21 contains nontrivial generalized splines, RKn1,n2 also contains nontrivial generalized splines.

Here we give the software code for the above algorithm using Python. Using this we can obtain generalized spline pKn1,n2 for Kn1,n2, for any value of n1, n2. Here we have used the notation A(i,j) for the ideal as well as for the elements of the ideal.

3.4 Python code for Kn1,n2

In the following section, we give the method of writing the generalized spline for the n-dimensional hypercube Qn.

3.5 Hypercubes

Before constructing the generalized splines for the n-dimensional hypercube Qn, we discuss about the Gray code, which was given by Frank Gray in 1947 to prevent the spurious output from electro-chemical switches. In the present time, they are widely used for error correction in digital communications. The Gray code is an n-bit code which is an ordering of the 2n strings of length n over 0,1, such that every pair of successive strings differ in exactly one position. For example a 2-bit Gray code is 00, 01, 11, 10 and a 3-bit Gray code is 000, 001, 101, 111, 011, 010,110, 100. These Gray codes exist for all n [Citation16].

Here we discuss about the n-dimensional hypercube Qn, which is a regular graph with 2n vertices, where each vertex corresponds to a binary string of length n [Citation17] . Two vertices labeled by strings x and y are joined by an edge if x can be obtained from y by changing a single bit. The hypercubes for n = 1,2,3 are shown in Fig. 11.

Interestingly, the existence of one dimensional Gray code is related to a basic property of the n-dimensional hypercube Qn, which says that for every integer n2, Qn has a Hamiltonian cycle. Here, the term Hamiltonian cycle means a cycle in a graph G that contains all the vertices exactly once in G [Citation14]. Fig. 12 expresses the Hamiltonian property of Q2 and Q3.

We define an ordering of the vertices of the hypercube in the same way as they appear in the Hamiltonian cycle. Thus, we number the vertices 1, 2, 3, …, 2n as shown in Fig. 12, with the vertices 2,4,8… expressed as 2, 22, 23, …. 2n and call this the Hamiltonian ordering. This helps us in identifying pattern in which the non-zero vertex labels appear in the generalized spline for the n-dimensional hypercube. Also, hypercubes are regular graphs with degree of each vertex equal to n. Another important property of hypercubes which we have used in the construction of generalized splines is the bipartite nature of these graphs [Citation13]. This means that the vertex set of hypercube can be partitioned into two subsets V1 and V2 such that

1.

No vertices of either of the subsets V1 and V2 are adjacent to vertices within the same set.

2.

Every vertex in V1 is adjacent to exactly n vertices V2 and vice versa.

We give the bipartite representation of the hypercubes for n=2 and n=3 (Fig. 13).

3.5.1 Generalized spline for the hypercube Q2

In this section we construct generalized spline for the graph Q2 over R which is a commutative ring with identity and also an integral domain. The edges of Q2 are labeled with non-zero ideals of R. The vertices are ordered in the way they appear in Hamiltonian cycle (Fig. 12).

Then it can be easily verified that a generalized spline for Q2 is given by: pQ2=0α01,00α01,110α10,00α10,11=pv00pv01pv11pv10=pv1pv2pv3pv22

Here we have used similar notations in previous sections, i.e., αij,rs, (for i,j,r,s = 0 or 1) denote an element of the edge ideal associated with the edge joining the vertices vij and vrs. Interestingly, we note that the non-zero vertex labels in pQ2 appear for the vertices 2 and 22. Next, we construct the generalized spline for Q3.

3.6 Generalized splines for the hypercube (Q3)

To construct the generalized splines for the hypercube Q3, we refer to the bipartite structure and Hamiltonian ordering of Q3 (Figs. 12 and 13). Then it can be easily verified that a generalized spline for Q3 is given by: pQ3=0α001,000α001,011α001,1010α010,000α010,011α010,110000α100,000α100,101α100,110=pv000pv001pv011pv010pv110pv111pv101pv100=pv1pv2pv3pv22pv5pv6pv7pv23

The vertices of Q3 are vi1i2i3 where (i1, i2, i3) is a binary string of length 3 and two vertices are adjacent if their respective strings differ only at one position. Also, we see that, the Hamiltonian cycle in Q3 is one in which the vertices follow a 3-bit gray code 000, 001, 011, 010, 110, 111, 101, 100. We again give the Hamiltonian ordering to the vertices in Q3 by numbering the vertices 000, …,100 as 1,2, …,8.

Constructing the generalized spline for Q3 starts with labeling the vertex v000 as 0. Now, the vertices adjacent to v000 are v100, v010 and v001, which are numbered as 2, 22, 23 according to Hamiltonian ordering of the vertices. We see that these are the only vertices which are labeled with non-zero elements in pQ3. Also the vertex labels of these vertices are obtained by taking the product of the elements belonging to the edge ideals corresponding to the three edges which are adjacent to these vertices.

It can be verified that with these vertex labelings, pQ3 becomes a generalized spline for the hypercube Q3, because the edge conditions are satisfied by the vertex labels of adjacent vertices.

We can extend the above method of writing the generalized spline to higher dimensional hypercubes.

3.6.1 Generalized spline for the hypercube (Q4)

The graph of 4-dimensional hypercube Q4 is in Fig. 14.

The bipartite structure and Hamiltonian path of the hypercube Q4 are as follows (see Fig. 15):

For Q4 we have the first vertex as v0000 which is adjacent to the vertices v0001, v0010, v0100 and v1000. Using the bipartite structure of Q4 and Hamiltonian ordering, we get the generalized spline for Q4 as follows: pQ4=0α0001,0000α0001,0011α0001,0101α0001,10010α0010,0000α0010,0011α0010,0110α0010,1010000α0100,0000α0100,0101α0100,0110α0100,11000000000α1000,0000α0100,1001α1000,1010α1000,1100=pv0000pv0001pv0011pv0010pv0110pv0111pv0101pv0100pv1100pv1101pv1111pv1110pv1010pv1011pv1001pv1000=pv1pv2pv3pv22pv5pv6pv7pv23pv9pv10pv11pv12pv13pv14pv15pv24

Once again, we see that the non-zero vertex labels appear only for the vertices numbered as 2, 22, 23 and 24. These are the vertices adjacent to the vertex 1 in the Hamiltonian ordering of the vertex v0000 in the bipartite structure. Also, the non-zero vertex labels are obtained by taking the product of the four elements of the edge ideals corresponding to the four edges which are incident to the respective vertices. Thus, the vertex v0001 is labeled with the product of the four elements α0001,0000α0001,0011α0001,0101α0001,1001, because it is adjacent to the vertices v0000, v0011, v0101 and v1001.

This gives us an algorithm for writing the generalized spline for the edge labeled n-dimensional hypercube Qn, for any n.

3.7 Theorem

Let Qn be an n-regular hypercube with the vertices partitioned into two disjoint subsets V1 and V2, containing 2n1 vertices each. We introduce the Hamiltonian ordering for the vertices of Qn so that the vertices are numbered as 1, 2, 3, 22, …, 2n. Let the first vertex be v000 in V1 and adjacent vertices v001,v0010,v0100, …v100 in V2 which are numbered as 2, 22, 23, …, 2n. The vertex labels corresponding to the generalized spline pQn defined for Qn are as follows:

1.

The vertex v000 is labeled with the element 0 R, i.e, pv00 = 0.

2.

The vertex v001 which is adjacent to v00 is labeled as pv001 and is equal to the product of the n elements belonging to the edge ideals associated with the n edges adjacent to v00...01.

Then, pv00...01=α001,000α0001,0011α0001,00101α0001,1001

Similarly the vertex v00...10 is labeled as pv010 associated with the n edges adjacent to the vertex v00...010. Then,

pv00...010=α010,000α0010,0011α0010,00110α0010,10010 and so on.

These are the only vertices with non-zero vertex labels where each vertex label is a product of n elements belonging to n edge ideals and the remaining vertices are labeled as zero.

It can be easily verified that pQn is a generalized spline on the hypercube Qn as the edge conditions are satisfied for the adjacent vertices and also, pQn is nontrivial since R is an integral domain.

4 Conclusions

We conclude our work by developing an algorithm to construct the generalized spline rings for the special graphs such as the complete graphs, complete bipartite graphs and hypercubes. These graphs find important applications in network and approximation theory and the present work adds to the existing knowledge and understanding in these and related areas. Also, it opens a vast field for research as we can think of studying the generalized splines over these and other graphs by changing the base rings to other rings such as the polynomial rings and ring of Laurent polynomials. As these rings are PIDs, we can also try to find suitable bases for the generalized splines for these graphs.

5 List of abbreviations

The following are the list of abbreviations used in this paper:

1. CAGD: Computer-Aided Geometric Design

2. PID: Principal Ideal Domain

References

  • BilleraL.J.RoseL.L., A dimension series for multivariate splines Discrete Comput. Geom. 6 2 1991 107–128. 10.1007/BF02574678
  • DummitD.Foote.R.Abstract AlgebraInternational Series of Monographs on Physics2003Wiley
  • HaasR., Module and vector space bases for spline spaces J. Approx. Theory 65 1 1991 73–89
  • RoseL.L., Graphs, syzygies, and multivariate splines Discrete Comput. Geom. 32 4 2004 623–637. 10.1007/s00454-004-1141-3
  • DiPasqualeM.R., Shellability and freeness of continuous splines J. Pure Appl. Algebra 216 11 2012 2519–2523. 10.1016/j.jpaa.2012.03.010
  • DalbecJ.P.SchenckH., On a conjecture of rose J. Pure Appl. Algebra 165 2 2001 151–154. 10.1016/S0022-4049(00)00175-4URLhttp://www.sciencedirect.com/science/article/pii/S0022404900001754
  • BilleraL.J.RoseL.L., Modules of piecewise polynomials and their freeness Math. Z. 209 1 1992 485–497. 10.1007/BF02570848
  • YuzvinskyS., Modules of splines on polyhedral complexes Math. Z. 210 1 1992 245–254. 10.1007/BF02571795
  • J. Tymoczko, Splines in geometry and topology, ArXiv e-prints (11 2015).
  • N. Bowden, J. Tymoczko, Splines mod m, ArXiv e-prints (2015).
  • S. Gilbert, S. Polster, J. Tymoczko, Generalized splines on arbitrary graphs, ArXiv e-prints (2013).
  • M. Handschy, J. Melnick, S. Reinders, Integer Generalized Splines on Cycles, ArXiv e-prints (sep 2014).arXiv:1409.1481.
  • S. F. Florkowski III, Spectral graph theory of the hypercube, Tech. rep. NAVAL POSTGRADUATE SCHOOL MONTEREY CA (2008).
  • DybizbaskiJ.SzepietowskiA., Hamiltonian paths in hypercubes with local traps Inform. Sci. 3752017 258–270. 10.1016/j.ins.2016.10.011URLhttp://www.sciencedirect.com/science/article/pii/S0020025516311756
  • E. Gjoni, Basis criteria for n-cycle integer splines, Bard College Senior Projects Spring (2015).
  • NikolopoulosS.D., Optimal gray-code labeling and recognition algorithms for hypercubes Inform. Sci. 137 1 2001 189–210. 10.1016/S0020-0255(01)00120-7URLhttp://www.sciencedirect.com/science/article/pii/S0020025501001207
  • WestDouglas B., Introduction to Graph Theory2000Prentice Hall