(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
gmp_invert — Inverse by modulo
Computes the inverse of
num1
modulo
num2
.
num1
A
GMP
object, an
int
,
or a
string
that can be interpreted as a number following the same logic
as if the string was used in
gmp_init()
with automatic
base detection (i.e. when
base
is equal to 0).
num2
A
GMP
object, an
int
,
or a
string
that can be interpreted as a number following the same logic
as if the string was used in
gmp_init()
with automatic
base detection (i.e. when
base
is equal to 0).
A GMP number on success or
false
if an inverse does not exist.
Example #1 gmp_invert() example
<?php
echo
gmp_invert
(
"5"
,
"10"
);
// no inverse, outputs nothing, result is FALSE
$invert
=
gmp_invert
(
"5"
,
"11"
);
echo
gmp_strval
(
$invert
) .
"\n"
;
?>
The above example will output:
9
Example #2 gmp_invert() example<?php
echogmp_invert("5", "10"); // no inverse, outputs nothing, result is FALSEIt means(5* x) mod 10= 1.Andwith thisfunctionwe want a valueforx, because of mod 10, x should be{1..10-1(9)}, so:
5* 1 mod 10= 5
5* 2 mod 10= 0
5* 3 mod 10= 5
5* 4 mod 10= 0
5* 5 mod 10= 5
5* 6 mod 10= 0
5* 7 mod 10= 5
5* 8 mod 10= 0
5* 9 mod 10= 5
We don't have any 1 in the resuls. so it will be False.
$invert = gmp_invert("5", "11");
echo gmp_strval($invert) . "\n";
?>
The above example will output:
9
5 * 9 mod 11 = 1