The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Math::ModInt::Trivial - integer arithmetic modulo one

VERSION

This documentation refers to version 0.013 of Math::ModInt::Trivial.

SYNOPSIS

  use Math::ModInt qw(mod);

  $a = mod(0, 1);                                 # 0 [mod 1]
  $b = $a->new(0);                                # 0 [mod 1]
  $c = $a + $b;                                   # 0 [mod 1]
  $d = $a**2 - $b/$a;                             # 0 [mod 1]

  print $d->residue, " [mod ", $b->modulus, "]";  # prints 0 [mod 1]
  print "$d\n";                                   # prints mod(0, 1)

  $bool = $c == $d;                               # true

DESCRIPTION

Math::ModInt::Trivial is an implementation of Math::ModInt for modulus one. Like all Math::ModInt implementations, it is loaded behind the scenes when there is demand for it, without applications needing to worry about it.

The residue class modulo one is the only ring where division by zero is defined, because the single element is its own multiplicative inverse. While operating on a one-element space may seem rather pointless, modular arithmetic would be incomplete without it, as it is a valid quotient ring of the ring of integers.

SEE ALSO

AUTHOR

Martin Becker, <becker-cpan-mp at cozap.com>

LICENSE AND COPYRIGHT

Copyright (c) 2009-2021 Martin Becker, Blaubeuren.

This library is free software; you can distribute it and/or modify it under the terms of the Artistic License 2.0 (see LICENSE file).

DISCLAIMER OF WARRANTY

This library is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.