arrow-left

All pages
gitbookPowered by GitBook
1 of 1

Loading...

Mathematical Notation

hashtag
Introduction

Throughout CryptoBook, discussions are made more concise by using various mathematical symbols. For some of you, all of these will feel familiar, while for others, it will feel new and confusing. This chapter is devoted to helping new readers gain insight into the notation used.

circle-info

If you're reading a page and something is new to you, come here and add the symbol, someone else who understands it can explain its meaning

hashtag
Mathematical Objects

hashtag
Special Sets

  • : denotes the set of complex numbers

  • : denotes the set of real numbers

  • : denotes the set of integers

  • We refer to unit groups by or . Example:

  • We refer to finite fields with elements by

  • We refer to a general field by

hashtag
Relation operators

  • means is an element of (belongs to)

hashtag
Logical Notation

  • means for all

  • means there exists. means uniquely exists

hashtag
Operators

  • means the probability of an event to happen. Sometimes denoted as or as

Q\mathbb{Q}Q: denotes the set of rational numbers

  • N\mathbb{N}N: denotes the set of natural numbers (non-negative integers)

  • Z/nZ\mathbb{Z}/n\mathbb ZZ/nZ: denotes the set of integers mod nnn

  • We refer to the algebraic closure of this field by kˉ\bar{k}kˉ

    C\mathbb{C}C
    R\mathbb{R}R
    Z\mathbb{Z}Z
    R×R^\timesR×
    R∗R^*R∗
    (Z/nZ)×(\mathbb Z/n \mathbb Z)^\times(Z/nZ)×
    qqq
    Fq\mathbb{F}_qFq​
    kkk
    ∈\in∈
    ∀\forall∀
    ∃\exists∃
    ∃!\exists!∃!
    Pr(A)Pr(A)Pr(A)
    AAA
    Pr[A]Pr[A]Pr[A]
    P(A)P(A)P(A)
    """
    We can call each of these sets with Sage using the 
    following commands. Comments are the result of the
    input.
    """
    CC
    # Complex Field with 53 bits of precision
    RR
    # Real Field with 53 bits of precision
    ZZ
    # Integer Ring
    QQ
    # Rational Field
    NN
    # Non negative integer semiring
    Zmod(11) # or `Integers(11)` or `IntegerModRing(11)` 
    # Ring of integers modulo 11
    """
    Example of defining a field and then its 
    algebraic closure
    """
    GF(3)
    # Finite Field of size 3 , where GF stands for Galois Field 
    GF(3).algebraic_closure()
    # Algebraic closure of Finite Field of size 3
    """
    If you want to find which field an element belongs to you can use the 
    `.parent()` function
    """
    
    x = 7
    print(x.parent())
    # Integer Ring
    
    y = 3.5
    print(y.parent())
    # Real Field with 53 bits of precision
    """
    If you want to "lift" an element from a quotient ring R/I to the ring R
    use the `.lift()` function
    """
    R = ZZ
    RI = Zmod(11)
    x =  RI(5)
    
    print(x.parent())
    # Ring of integers modulo 11
    
    y = x.lift()
    print(y.parent())
    # Integer Ring
    
    print(y in R)
    # True