Computational Complexity Reductions Using Clifford Algebras

Computational Complexity Reductions Using Clifford Algebras

Computational Complexity Reductions using Clifford Algebras Ren´eSchott,∗ G. Stacey Staplesy 1 Introduction This paper is an extension of earlier work (cf. [18]), in which the current au- thors investigated complexity reductions for a number of combinatorial and graph-theoretic problems. The graph-theoretic results of that paper were based primarily on nilpotent adjacency matrix methods developed in a number of earlier publications: [16], [17], [19], [20], [21]. The previous graph results are recalled in summary in Section 3, where ad- ditional examples are computed using Mathematica. In Section 4, new results are obtained and some previous results are improved by eliminating adjacency matrices, thereby removing the consideration of matrix multiplication in deter- mining computational complexity. Moreover, results on graph and vertex coverings by disjoint \proper" cycles are obtained by introducing the \three-nil algebra" constructed within a Clif- ford algebra of appropriate signature. The generators fξjg1≤i≤n of this algebra 3 satisfy ξi ξj = ξj ξi and ξj = 0 for 1 ≤ i; j ≤ n. Given a computing architecture based on Clifford algebras, the natural con- text for determining an algorithm's time complexity is in terms of the number of geometric (Clifford) operations required. This paper assumes the existence of such a processor and examines a number of combinatorial problems known to be of NP time complexity. While Clifford algebra computations can be performed on general purpose processors through the use of software libraries like CLU [13], GluCat [10], GAIGEN [6], and the Maple package CLIFFORD [1], direct hardware implemen- tations of data types and operators is the best way to exploit the computational power of Clifford algebras. To this end, a number of hardware implementations have been developed. To our knowledge, the first such hardware implementation was a Clifford co-processor design developed by Perwass, Gebken, and Sommer [14]. Another ∗IECN and LORIA Universit´eHenri Poincar´e-NancyI, BP 239, 54506 Vandoeuvre-l`es- Nancy, France, email: [email protected] yDepartment of Mathematics and Statistics, Southern Illinois University Edwardsville, Edwardsville, IL 62026-1653, email: [email protected] 1 was the color edge detection hardware developed by Mishra and Wilson [11], [12], whose work focused on the introduction of a hardware architecture for applications involving image processing. More recently, Gentile, Segreto, Sorbello, Vassallo, Vitabile, and Vullo have developed a parallel embedded co-processing core that directly supports Clifford algebra operators (cf. [7], [8], [9]). The prototype was implemented on a Field Programmable Gate Array, and initial tests showed a 4× speedup for Clifford products over the analogous operations in GAIGEN. Also of interest is the work of Aerts and Czachor [2], who have shown that quantum-like computations can be performed within Clifford algebras without the associated problem of noise and need for error-correction. 2 Preliminaries Definition 2.1 (Clifford algebra of signature (p; q)). For fixed n ≥ 1, the n 2 -dimensional algebra C`p;q (p + q = n) is defined as the associative algebra generated by the collection feig (1 ≤ i ≤ n) along with the unit scalar e0 = e; = 1 2 R, subject to the following multiplication rules: ei ej = −ej ei for i 6= j; (2.1) ( 2 1 1 ≤ i ≤ p; and ei = (2.2) −1 p + 1 ≤ i ≤ n: Products are multi-indexed by subsets of [n] = f1; : : : ; ng (in canonical or- der) according to Y ei = eι; (2.3) ι2i where i is an element of the power set 2[n]. Define fi = (ei + e2n+i) 2 C`2n;2n for each 1 ≤ i ≤ 2n. Then by defining ζi = f2i−1 f2i for each 1 ≤ i ≤ n, the following useful algebra is obtained. nil Definition 2.2. Let C`n denote the real abelian algebra generated by the collection fζig (1 ≤ i ≤ n) along with the scalar 1 = ζ0 subject to the following multiplication rules: ζi ζj = ζj ζi for i 6= j; and (2.4) 2 ζi = 0 for 1 ≤ i ≤ n: (2.5) nil It is evident that a general element u 2 C`n can be expanded as X u = ui ζi ; (2.6) i22[n] [n] where i 2 2 is a subset of [n] = f1; 2; : : : ; ng used as a multi-index, ui 2 R, Y and ζi = ζι. ι2i 2 nil Given u 2 C`n , define the grade-k part of u by X huik = ui ζi; (2.7) jij=k where jij denotes the cardinality of the multi-index i. 2 Recalling the Clifford algebra C`p;q;r defined by Porteous[15], in which ei = 0 for p+q+1 ≤ i ≤ p+q+r, one could simply define ζi = e2i−1 e2i for 1 ≤ i ≤ n in the Clifford algebra C`0;0;2n. Equivalently, one could use disjoint bivectors of the Grassmann algebra. nil 3 Note that defining ξi = ζ2i−1 + ζ2i 2 C`2n for 1 ≤ i ≤ n gives ξi = 0 and ξiξj = ξjξi. This construction leads to another useful commutative algebra. Definition 2.3. Let n > 0 be an integer, and let the collection fξ1; : : : ; ξng k satisfy the following: ξi = 0 if and only if k ≥ 3 for each 1 ≤ i ≤ n and n ξiξj = ξjξi for 1 ≤ i; j ≤ n. The three-nil algebra is the 3 -dimensional algebra generated by the collection fξig along with the unit scalar and is denoted by 3nil C`n . Note that elements of the three-nil algebra have canonical expansion of the following form: X v1 vn u = α~v ξ1 ··· ξn : (2.8) n ~v2Z3 n Given vector ~v 2 Z3 , let diag(~v) denote the n × n diagonal matrix whose 3nil main diagonal is ~v. Given u 2 C`n , define the grade-k part of u by X v1 vn huik = α~v ξ1 ··· ξn : (2.9) n ~v2Z3 rank(diag(~v))=k In other words, the grade-k part of u is the expansion over terms with k dis- tinct generators. This definition extends naturally to the grade-(j; k) part of an 3nil nil element in C`n ⊗ C`n . 1 Remark 2.4. Letting " = (1 + e e ) 2 C` for each 1 ≤ i ≤ n gives i 2 i n+i n;n another useful commutative algebra whose generators are idempotent; i.e., ele- ments of f"ig1≤i≤n satisfy the following multiplication rules: "i "j = "j "i for i 6= j; and (2.10) 2 "i = "i for 1 ≤ i ≤ n: (2.11) Combinatorial properties of this algebra make it applicable to graph theory as well [16], [18]. nil Letting u denote an arbitrary element of C`n , the scalar sum of coefficients will be denoted by X X hhuii = u; ζi = ui: (2.12) i22[n] i22[n] 3 3nil The definitions of scalar sum and grade-k part extend naturally to C`n . nil A number of norms can be defined on C`n . One that will be used later is the infinity norm, defined by X ui ζi = max ui : (2.13) i22[n] [n] i22 1 An algorithm's time complexity is typically determined by counting the num- ber of operations required to process a data set of size n in worst-, average-, and best-case scenarios. The operation of multiplying two integers is typical. Multiplying a pair of integers in classical computing is assumed to require a constant interval of time, independent of the integers. The architecture of a classical computer makes this assumption natural. The existence of a processor whose registers accommodate storage and ma- } nipulation of elements of C`n is assumed through the remainder of this paper. The C` complexity of an algorithm will be determined by the required num- } ber of C`n operations, or C`ops required by the algorithm. In other words, } multiplying (or adding) a pair of elements u; v 2 C`n will require one C`op in } C`n , where } can be replaced by either \nil" or \3nil". Evaluation of the infinity norm is another matter. In one possible model of } such an evaluation, the scalar coefficients in the expansion of u 2 C`n are first paired off and all pairs are then compared in parallel. In this way, evaluation of the infinity norm has complexity O(log 2n) = O(n) (cf. [18]). 2.1 Graph Preliminaries The reader is referred to [23] for graph theory beyond the essential notation and terminology found here. A graph G = (V; E) is a collection of vertices V and a set E of unordered pairs of vertices called edges. Two vertices vi; vj 2 V are adjacent if there exists an edge eij = fvi; vjg 2 E. In this case, the vertices vi and vj are said to be incident with eij. The number of edges incident with a vertex is referred to as the degree of the vertex. A graph is said to be regular if all its vertices are of equal degree. A graph is finite if V and E are finite sets, that is, if jV j and jEj are finite numbers. A k-walk fv0; : : : ; vkg in a graph G is a sequence of vertices in G with initial vertex v0 and terminal vertex vk such that there exists an edge (vj; vj+1) 2 E for each 0 ≤ j ≤ k −1. A k-walk contains k edges. A k-path is a k-walk in which no vertex appears more than once. A closed k-walk is a k-walk whose initial vertex is also its terminal vertex. A k-cycle is a closed k-path with v0 = vk. For convenience, two-cycles (which have a repeated edge) will be allowed in the current work.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    21 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us