PHP 8.0.0 Released!

gmp_invert

(PHP 4 >= 4.0.4, PHP 5, PHP 7)

gmp_invertInverse by modulo

Description

gmp_invert ( GMP $a , GMP $b ) : GMP

Computes the inverse of a modulo b.

Parameters

a

Either a GMP number resource in PHP 5.5 and earlier, a GMP object in PHP 5.6 and later, or a numeric string provided that it is possible to convert the latter to a number.

b

Either a GMP number resource in PHP 5.5 and earlier, a GMP object in PHP 5.6 and later, or a numeric string provided that it is possible to convert the latter to a number.

Return Values

A GMP number on success or FALSE if an inverse does not exist.

Examples

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

add a note add a note

User Contributed Notes 1 note

up
2
athamidn at gmail dot com
7 months ago
Example #2 gmp_invert() example
<?php
echo gmp_invert("5", "10"); // no inverse, outputs nothing, result is FALSE

It means (5 * x ) mod 10 = 1. And with this function we want a value for x, 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 results. 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
To Top