Sha256: 256ea568aad658a2c114270ef9d7ff2f4d59bd300d0157f6fdad527eaebc044a

Contents?: true

Size: 1.48 KB

Versions: 2

Compression:

Stored size: 1.48 KB

Contents

# frozen_string_literal: true

require_relative "hensel_code/version"
require "prime"
require "openssl"

# Main classes definitions and loadings
module HenselCode
  class Error < StandardError; end
  class BadBitRangeForRandomPrime < StandardError; end
  class WrongHenselCodeInputType < StandardError; end
  class HenselCodesWithDifferentPrimes < StandardError; end
  class HenselCodesWithDifferentPrimesAndExponents < StandardError; end
  class HenselCodesWithDifferentExponents < StandardError; end
  class IncompatibleOperandTypes < StandardError; end
  class NonInitializableClass < StandardError; end

  autoload  :Tools, "hensel_code/tools"
  autoload  :PAdicBase, "hensel_code/padic_base"
  autoload  :GAdicBase, "hensel_code/gadic_base"
  autoload  :Polynomial, "hensel_code/polynomial"
  autoload  :PAdicVerifier, "hensel_code/padic_verifier"
  autoload  :GAdicVerifier, "hensel_code/gadic_verifier"
  autoload  :ModularArithmetic, "hensel_code/modular_arithmetic"
  autoload  :FinitePadicExpansion, "hensel_code/finite_padic_expansion"
  autoload  :FiniteGadicExpansion, "hensel_code/finite_gadic_expansion"
  autoload  :TruncatedFinitePadicExpansion, "hensel_code/truncated_finite_padic_expansion"
  autoload  :TruncatedFiniteGadicExpansion, "hensel_code/truncated_finite_gadic_expansion"

  # aliases for classes with long names
  TFPE = TruncatedFinitePadicExpansion
  FPE = TruncatedFinitePadicExpansion
  HCWDPAE = HenselCodesWithDifferentPrimesAndExponents
  WHIT = WrongHenselCodeInputType
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
hensel_code-0.4.1 lib/hensel_code.rb
hensel_code-0.4.0 lib/hensel_code.rb