Sha256: 819c513def97cb2024bc226c5c01d60cb0aaa12f88b442e7f530794c45041f61

Contents?: true

Size: 259 Bytes

Versions: 20

Compression:

Stored size: 259 Bytes

Contents

# coding: utf-8
class Integer
  def knödel?(k)
    n = self
    return false unless n > k and composite?
    exp = n - k + 1
    (1...n).select{|j| j.coprime?(n)}.all? do |j|
      (j**exp - j).remainder(n).zero?
    end
  end
  alias :knodel? :knödel?
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
numb-0.186.0 lib/numb/knodel.rb
numb-0.185.0 lib/numb/knodel.rb
numb-0.184.0 lib/numb/knodel.rb
numb-0.181.0 lib/numb/knodel.rb
numb-0.170.0 lib/numb/knodel.rb
numb-0.152.0 lib/numb/knodel.rb
numb-0.138.0 lib/numb/knodel.rb
numb-0.125.0 lib/numb/knodel.rb
numb-0.114.0 lib/numb/knodel.rb
numb-0.111.0 lib/numb/knodel.rb
numb-0.109.0 lib/numb/knodel.rb
numb-0.99.0 lib/numb/knodel.rb
numb-0.96.0 lib/numb/knodel.rb
numb-0.89.0 lib/numb/knodel.rb
numb-0.84.0 lib/numb/knodel.rb
numb-0.77.0 lib/numb/knodel.rb
numb-0.72.1 lib/numb/knodel.rb
numb-0.72.0 lib/numb/knodel.rb
numb-0.68.0 lib/numb/knodel.rb
numb-0.63.0 lib/numb/knodel.rb