190,410 research outputs found

    Implementing efficient 384-Bit NIST elliptic curves over prime fields on an ARM946E

    Get PDF
    This thesis presents a performance evaluation of a 384-bit NIST elliptic curve over prime fields on a 32-bit ARM946E microprocessor running at 100-MHz. While adhering to the constraints of an embedded system, the following items were investigated to decrease computation time: the importance of the underlying finite arithmetic, the use of hardware accelerators, the use of memory options, and the use of available processor features. The elliptic curve implementation utilized existing finite arithmetic C code to interface to an AiMEC Montgomery Exponentiator Core. The exponentiator core supports modular addition, modular multiplication, and exponentiation. The finite arithmetic C code also contained functions to perform operations which are not performed by the exponentiator such as non-modular multiplication, non-modular addition, and modular subtraction. Multiple enhancements were made to the finite field arithmetic. These provided a 22% time reduction in execution time of the 384-bit elliptic curve multiplication. Enhancements included writing assembly functions, adding checks prior to performing a modular reduction, utilizing the exponentiator core only when modulus reduction was necessary, using multiplication if more than two additions are required and placing the finite arithmetic into its own library and using ARM mode. Other optimizations investigated including: cache usage, compiler options (speed vs. size), and Thumb instruction set vs. ARM instruction set provided minimal reduction, 3.6%, in the execution time

    Mathematical Knowledge for Teaching Teachers: The Case of Multiplication and Division of Fractions

    Get PDF
    This study attempts to answer the question, What is the mathematical knowledge required by teachers of elementary mathematics content courses in the area of multiplication and division of fractions? Beginning in the mid-1980s, when Shulman (1986) introduced the idea of pedagogical content knowledge, researchers have been looking at the knowledge needed to teach in a variety of different content areas. One area that has garnered much of the research is that of mathematics. Researchers have developed frameworks for what they call mathematical knowledge for teaching, but there has been little work done looking at the knowledge requirements for teachers of teachers. This study attempts to fill this gap by determining some aspects of a framework for the mathematical knowledge required to teach prospective elementary teachers multiplication and division of fractions. In order to determine aspects of a framework for mathematics teacher educator knowledge in relation to multiplication and division of fractions, I interviewed, observed, and audiotaped three experienced teacher educators in different educational settings to determine the mathematical work of teaching prospective teachers fraction multiplication and division. My analysis focused on three of major tasks that came out of the work: introducing fraction multiplication, helping students make sense of fraction division, and assessing student understanding. Each of these tasks played a major role in the work of the teacher educators, and the knowledge required to perform these tasks was evident in varying degrees in each teacher educator. After analyzing the three mathematical tasks and the knowledge required by them, I was able to determine some components of a framework for the mathematical knowledge needed for teaching teachers multiplication and division of fractions. These aspects include: understanding multiple representations of fraction multiplication and division and how these representations relate to each other, to whole number ideas, and to the algorithms, deciding which aspects of the topics will help prospective teachers make the connections that they will need in order to teach these topics, especially since time often plays a factor in what gets taught in mathematics content classes for prospective teachers, setting specific goals of exactly what one wants one\u27s students to know, rather than having a general goal of wanting prospective teachers to develop conceptual understanding of a topic, and being able to design and use assessments effectively to help decide if one is achieving one\u27s goals. While each of the aspects described above are components of a framework for the mathematical knowledge needed by teacher educators, the three teacher educators in my study all lacked or were unable to demonstrate some of the knowledge components that would have helped them to meet their goals, despite having a wealth of experience teaching and designing mathematics content courses for prospective elementary teachers. One possible reason for this is that each of the teacher educators in my study were basically alone in their departments, without opportunities to collaborate or discuss these ideas with anyone else. These results suggest a need for better professional development for teacher educators in the field of mathematics education

    Homomorphic Multiple Precision Multiplication for CKKS and Reduced Modulus Consumption

    Get PDF
    Homomorphic Encryption (HE) schemes such as BGV, BFV, and CKKS consume some ciphertext modulus for each multiplication. Bootstrapping (BTS) restores the modulus and allows homomorphic computation to continue, but it is time-consuming and requires a significant amount of modulus. For these reasons, decreasing modulus consumption is crucial topic for BGV, BFV and CKKS, on which numerous studies have been conducted. We propose a novel method, called mult2\mathsf{mult}^2, to perform ciphertext multiplication in the CKKS scheme with lower modulus consumption. mult2\mathsf{mult}^2 relies an a new decomposition of a ciphertext into a pair of ciphertexts that homomorphically performs a weak form of Euclidean division. It multiplies two ciphertexts in decomposed formats with homomorphic double precision multiplication, and its result approximately decrypts to the same value as does the ordinary CKKS multiplication. mult2\mathsf{mult}^2 can perform homomorphic multiplication by consuming almost half of the modulus. We extend it to multt\mathsf{mult}^t for any t2t\geq 2, which relies on the decomposition of a ciphertext into tt components. All other CKKS operations can be equally performed on pair/tuple formats, leading to the double-CKKS (resp. tuple-CKKS) scheme enabling homomorphic double (resp. multiple) precision arithmetic. As a result, when the ciphertext modulus and dimension are fixed, the proposed algorithms enable the evaluation of deeper circuits without bootstrapping, or allow to reduce the number of bootstrappings required for the evaluation of the same circuits. Furthermore, they can be used to increase the precision without increasing the parameters. For example, mult2\mathsf{mult}^2 enables 8 sequential multiplications with 100 bit scaling factor with a ciphertext modulus of only 680 bits, which is impossible with the ordinary CKKS multiplication algorithm

    Adaptive Precision Floating-Point Arithmetic and Fast Robust Geometric Predicates

    Get PDF
    Exact computer arithmetic has a variety of uses including, but not limited to, the robust implementation of geometric algorithms. This report has three purposes. The first is to offer fast software-level algorithms for exact addition and multiplication of arbitrary precision floating-point values. The second is to propose a technique for adaptive-precision arithmetic that can often speed these algorithms when one wishes to perform multiprecision calculations that do not always require exact arithmetic, but must satisfy some error bound. The third is to provide a practical demonstration of these techniques, in the form of implementations of several common geometric calculations whose required degree of accuracy depends on their inputs. These robust geometric predicates are adaptive; their running time depends on the degree of uncertainty of the result, and is usually small. These algorithms work on computers whose floating-point arithmetic uses radix two and exact rounding, including machines complying with the IEEE 754 standard. The inputs to the predicates may be arbitrary single or double precision floating-point numbers. C code is publicly available for the 2D and 3D orientation and incircle tests, an

    Bispectrum-window convolution via Hankel transform

    Get PDF
    We present a method to perform the exact convolution of the model prediction for bispectrum multipoles in redshift space with the survey window function. We extend a widely applied method for the power spectrum convolution to the bispectrum, taking advantage of a 2D-FFTlog algorithm. As a preliminary test of its accuracy, we consider the toy model of a spherical window function in real space. This setup provides an analytical evaluation of the 3-point function of the window, and therefore it allows to isolate and quantify possible systematic errors of the method. We find that our implementation of the convolution in terms of a mixing matrix shows differences at the percent level in comparison to the measurements from a very large set of mock halo catalogs. It is also able to recover unbiased constraints on halo bias parameters in a likelihood analysis of a set of numerical simulations with a total volume of 100 h -3 Gpc3. For the level of accuracy required by these tests, the multiplication with the mixing matrix is performed in the time of one second or less
    corecore