• Title/Summary/Keyword: algorithm for multiplication

Search Result 372, Processing Time 0.027 seconds

Shift-and-Add Multiplication Algorithm for Decimal System (십진수의 자리이동-덧셈 곱셈법)

  • Lee, Sang-Un
    • The Journal of the Institute of Internet, Broadcasting and Communication
    • /
    • v.14 no.2
    • /
    • pp.121-126
    • /
    • 2014
  • The problem of finding the fastest algorithm for multiplication of two large n-digit decimal numbers remains unsolved in the field of mathematics and computer science. To this problem so far two algorithms - Karatsuba and Toom-kook - have been proposed to shorten the number of multiplication. In the complete opposite of shorten the number of multiplication method, this paper therefore proposes an efficient multiplication algorithm using additions completely. The proposed algorithm totally applies shift-and-add algorithm of binary system to large digits of decimal number multiplication for example of RSA-100 this problem can't perform using computer. This algorithm performs multiplication purely with additions of complexity of $O(n^2)$.

Where's the Procedural Fluency?: U.S. Fifth Graders' Demonstration of the Standard Multiplication Algorithm

  • Colen, Yong S.;Colen, Jung
    • Research in Mathematical Education
    • /
    • v.24 no.1
    • /
    • pp.1-27
    • /
    • 2021
  • For elementary school children, learning the standard multiplication algorithm with accuracy, clarity, consistency, and efficiency is a daunting task. Nonetheless, what should be our expectation in procedural fluency, for example, in finding the product of 25 and 37 among fifth grade students? Collectively, has the mathematics education community emphasized the value of conceptual understanding to the detriment of procedural fluency? In addition to examining these questions, we survey multiplication algorithms throughout history and in textbooks and reconceptualize the standard multiplication algorithm by using a new tool called the Multiplication Aid Template.

The Novel Efficient Dual-field FIPS Modular Multiplication

  • Zhang, Tingting;Zhu, Junru;Liu, Yang;Chen, Fulong
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.14 no.2
    • /
    • pp.738-756
    • /
    • 2020
  • The modular multiplication is the key module of public-key cryptosystems such as RSA (Rivest-Shamir-Adleman) and ECC (Elliptic Curve Cryptography). However, the efficiency of the modular multiplication, especially the modular square, is very low. In order to reduce their operation cycles and power consumption, and improve the efficiency of the public-key cryptosystems, a dual-field efficient FIPS (Finely Integrated Product Scanning) modular multiplication algorithm is proposed. The algorithm makes a full use of the correlation of the data in the case of equal operands so as to avoid some redundant operations. The experimental results show that the operation speed of the modular square is increased by 23.8% compared to the traditional algorithm after the multiplication and addition operations are reduced about (s2 - s) / 2, and the read operations are reduced about s2 - s, where s = n / 32 for n-bit operands. In addition, since the algorithm supports the length scalable and dual-field modular multiplication, distinct applications focused on performance or cost could be satisfied by adjusting the relevant parameters.

Parallel Algorithm for Matrix-Matrix Multiplication on the GPU (GPU 기반 행렬 곱셈 병렬처리 알고리즘)

  • Park, Sangkun
    • Journal of Institute of Convergence Technology
    • /
    • v.9 no.1
    • /
    • pp.1-6
    • /
    • 2019
  • Matrix multiplication is a fundamental mathematical operation that has numerous applications across most scientific fields. In this paper, we presents a parallel GPU computation algorithm for dense matrix-matrix multiplication using OpenGL compute shader, which can play a very important role as a fundamental building block for many high-performance computing applications. Experimental results on NVIDIA Quad 4000 show that the proposed algorithm runs about 208 times faster than previous CPU algorithm and achieves performance of 75 GFLOPS in single precision for dense matrices with matrix size 4,096. Such performance proves that our algorithm is practical for real applications.

Design of Elliptic Curve Cryptographic Coprocessor over binary fields for the IC card (IC 카드를 위한 polynomial 기반의 타원곡선 암호시스템 연산기 설계)

  • 최용제;김호원;김무섭;박영수
    • Proceedings of the IEEK Conference
    • /
    • 2001.06b
    • /
    • pp.305-308
    • /
    • 2001
  • This paper describes the design of elliptic curve cryptographic (ECC) coprocessor over binary fields for the If card. This coprocessor is implemented by the shift-and-add algorithm for the field multiplication algorithm. And the modified almost inverse algorithm(MAIA) is selected for the inverse multiplication algorithm. These two algorithms is merged to minimize the hardware size. Scalar multiplication is performed by the binary Non Adjacent Format(NAF) method. The ECC we have implemented is defined over the field GF(2$^{163}$), which is a SEC-2 recommendation[7]..

  • PDF

A Design of 256-bit Modular Multiplier using 3-way Toom-Cook Multiplication Algorithm and Fast Reduction Algorithm (3-way Toom-Cook 곱셈 알고리듬과 고속 축약 알고리듬을 이용한 256-비트 모듈러 곱셈기 설계)

  • Yang, Hyeon-Jun;Shin, Kyung-Wook
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • 2021.10a
    • /
    • pp.223-225
    • /
    • 2021
  • Modular multiplication is a key operation for point scalar multiplication of ECC, and is the most important factor affecting the performance of ECC processor. This paper describes a design of a 256-bit modular multiplier that adopts 3-way Toom-Cook multiplication algorithm and modified fast reduction algorithm. One 90-bit multiplier and three 264-bit adders were used to optimize the hardware size and the number of clock cycles required. The modular multiplier was verified by implementing it using Zynq UltraScale+ MPSoC device and the modular multiplication operation takes 15 clock cycles.

  • PDF

The Design of A Code Generator for RISC Architecture (RISC 아키텍춰의 코드 생성기 설계)

  • 박종덕;임인칠
    • Journal of the Korean Institute of Telematics and Electronics
    • /
    • v.27 no.8
    • /
    • pp.1221-1230
    • /
    • 1990
  • This paper presents a code generation method and an effective handling algorithm of ingeger constant multiplication for RISC machines in compiler design. As RISC Architectures usually use faster and more simply formed instructions than CISC's and most RISC processors do not have an integer multiplication instruction, it is required an effective algorithm to process integer multiplication. For the proposed code generator, Portable C Compiler(PCC) is redesigned to be suitable for an RISC machine, and composed an addition chain is built up to allow fast execution of constant multiplication, a part of integer one whicch appears very frequency in code generation phase.

  • PDF

Bit-sliced Modular Multiplication Algorithm and Implementation (비트 확장성을 갖는 모듈러 곱셈 알고리즘 및 모듈러 곱셈기 설계)

  • 류동렬
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.10 no.3
    • /
    • pp.3-10
    • /
    • 2000
  • In this paper we propose a bit-sliced modular multiplication algorithm and a bit-sliced modular multiplier design meeting the increasing crypto-key size for RSA public key cryptosystem. The proposed bit-sliced modular multiplication algorithm was designed by modifying the Montgomery's algorithm. The bit-sliced modular multiplier is easy to expand to process large size operands and can be immediately applied to RSA public key cryptosystem.

Algorithm for Efficient D-Class Computation (효율적인 D-클래스 계산을 위한 알고리즘)

  • Han, Jae-Il
    • Journal of Information Technology Services
    • /
    • v.6 no.1
    • /
    • pp.151-158
    • /
    • 2007
  • D-class computation requires multiplication of three Boolean matrices for each of all possible triples of $n{\times}n$ Boolean matrices and search for equivalent $n{\times}n$ Boolean matrices according to a specific equivalence relation. It is easy to see that even multiplying all $n{\times}n$ Boolean matrices with themselves shows exponential time complexity and D-Class computation was left an unsolved problem due to its computational complexity. The vector-based multiplication theory shows that the multiplication of three Boolean matrices for each of all possible triples of $n{\times}n$ Boolean matrices can be done much more efficiently. However, D-Class computation requires computation of equivalent classes in addition to the efficient multiplication. The paper discusses a theory and an algorithm for efficient D-class computation, and shows execution results of the algorithm.

A Hybrid Approach on Matrix Multiplication

  • Tolentino Maribel;Kim Myung-Kyu;Chae Soo-Hoan
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2006.06a
    • /
    • pp.400-402
    • /
    • 2006
  • Matrix multiplication is an important problem in linear algebra. its main significance for combinatorial algorithms is its equivalence to a variety of other problems, such as transitive closure and reduction, solving linear systems, and matrix inversion. Thus the development of high-performance matrix multiplication implies faster algorithms for all of these problems. In this paper. we present a quantitative comparison of the theoretical and empirical performance of key matrix multiplication algorithms and use our analysis to develop a faster algorithm. We propose a Hybrid approach on Winograd's and Strassen's algorithms that improves the performance and discuss the performance of the hybrid Winograd-Strassen algorithm. Since Strassen's algorithm is based on a $2{\times}2$ matrix multiplication it makes the implementation very slow for larger matrix because of its recursive nature. Though we cannot get the theoretical threshold value of Strassen's algorithm, so we determine the threshold to optimize the use of Strassen's algorithm in nodes through various experiments and provided a summary shown in a table and graphs.

  • PDF