Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 2 of 2 for modSqrt5Mod8Prime (0.22 sec)

  1. src/math/big/int.go

    func (z *Int) modSqrt3Mod4Prime(x, p *Int) *Int {
    	e := new(Int).Add(p, intOne) // e = p + 1
    	e.Rsh(e, 2)                  // e = (p + 1) / 4
    	z.Exp(x, e, p)               // z = x^e mod p
    	return z
    }
    
    // modSqrt5Mod8Prime uses Atkin's observation that 2 is not a square mod p
    //
    //	alpha ==  (2*a)^((p-5)/8)    mod p
    //	beta  ==  2*a*alpha^2        mod p  is a square root of -1
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Mar 14 17:02:38 UTC 2024
    - 33.1K bytes
    - Viewed (0)
  2. src/math/big/int_test.go

    	p := tri(231)
    	p.Sub(p, intOne)
    	p.Sub(p, intOne) // tri(231) - 2 is a prime == 5 mod 8
    	x := new(Int).SetUint64(7)
    	for i := 0; i < b.N; i++ {
    		x.SetUint64(7)
    		x.modSqrt5Mod8Prime(x, p)
    	}
    }
    
    func TestBitwise(t *testing.T) {
    	x := new(Int)
    	y := new(Int)
    	for _, test := range bitwiseTests {
    		x.SetString(test.x, 0)
    		y.SetString(test.y, 0)
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 18:42:28 UTC 2024
    - 58.5K bytes
    - Viewed (0)
Back to top