libzahl

big integer library
git clone git://git.suckless.org/libzahl
Log | Files | Refs | README | LICENSE

commit 1f4fb92a5f52e25170f28a61e6979cf63ca7f36b
parent 32b87c5979a0e70994e4db65415ec0a2349c5618
Author: Mattias Andrée <maandree@kth.se>
Date:   Tue,  1 Mar 2016 11:49:17 +0100

Add more man pages

Signed-off-by: Mattias Andrée <maandree@kth.se>

Diffstat:
Aman/zabs.3 | 33+++++++++++++++++++++++++++++++++
Aman/zadd.3 | 36++++++++++++++++++++++++++++++++++++
Mman/zand.3 | 2+-
Aman/zdiv.3 | 37+++++++++++++++++++++++++++++++++++++
Aman/zdivmod.3 | 50++++++++++++++++++++++++++++++++++++++++++++++++++
Mman/zinit.3 | 10+++++++++-
Aman/zmod.3 | 41+++++++++++++++++++++++++++++++++++++++++
Aman/zmodmul.3 | 42++++++++++++++++++++++++++++++++++++++++++
Aman/zmodpow.3 | 42++++++++++++++++++++++++++++++++++++++++++
Aman/zmul.3 | 38++++++++++++++++++++++++++++++++++++++
Aman/zneg.3 | 33+++++++++++++++++++++++++++++++++
Mman/znot.3 | 2+-
Mman/zor.3 | 2+-
Aman/zpow.3 | 38++++++++++++++++++++++++++++++++++++++
Mman/zset.3 | 4+++-
Aman/zsqr.3 | 34++++++++++++++++++++++++++++++++++
Aman/zsub.3 | 36++++++++++++++++++++++++++++++++++++
Mman/zxor.3 | 2+-
18 files changed, 476 insertions(+), 6 deletions(-)

diff --git a/man/zabs.3 b/man/zabs.3 @@ -0,0 +1,33 @@ +.TH ZABS 3 libzahl +.SH NAME +zabs - Calculate the absolute value of a big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zabs(z_t \fIa\fP, z_t \fIb\fP); +.fi +.SH DESCRIPTION +.B zabs +calculates the absolute value of +.I b +and stores the result in +.IR a . +That is, +.I a +gets +.RI | b |. +.P +It is safe to call +.B zabs +with non-unique parameters. +.SH SEE ALSO +.BR zset (3), +.BR zstr (3), +.BR zadd (3), +.BR zsub (3), +.BR zmul (3), +.BR zdiv (3), +.BR zmod (3), +.BR zneg (3), +.BR zpow (3) diff --git a/man/zadd.3 b/man/zadd.3 @@ -0,0 +1,36 @@ +.TH ZADD 3 libzahl +.SH NAME +zadd - Calculate the sum of two big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zadd(z_t \fIsum\fP, z_t \fIaugend\fP, z_t \fIaddend\fP); +.fi +.SH DESCRIPTION +.B zadd +calculates the sum of a +.I augend +and a +.IR addend , +and stores the result in +.IR sum . +That is, +.I sum +gets +.I augend ++ +.IR addend . +.P +It is safe to call +.B zadd +with non-unique parameters. +.SH SEE ALSO +.BR zstr (3), +.BR zsub (3), +.BR zmul (3), +.BR zdiv (3), +.BR zmod (3), +.BR zneg (3), +.BR zabs (3), +.BR zpow (3) diff --git a/man/zand.3 b/man/zand.3 @@ -1,6 +1,6 @@ .TH ZAND 3 libzahl .SH NAME -zand - Calculates the bitwise AND of two big integers +zand - Calculate the bitwise AND of two big integers .SH SYNOPSIS .nf #include <zahl.h> diff --git a/man/zdiv.3 b/man/zdiv.3 @@ -0,0 +1,37 @@ +.TH ZDIV 3 libzahl +.SH NAME +zdiv - Calculate the quotient of two big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zdiv(z_t \fIquotient\fP, z_t \fIdividend\fP, z_t \fIdivisor\fP); +.fi +.SH DESCRIPTION +.B zdiv +calculates the quotient of a +.I dividend +and a +.IR divisor , +and stores the result in +.IR quotient . +That is, +.I quotient +gets +.I dividend +/ +.IR divisor . +.P +It is safe to call +.B zdiv +with non-unique parameters. +.SH SEE ALSO +.BR zdivmod (3), +.BR zstr (3), +.BR zadd (3), +.BR zsub (3), +.BR zmul (3), +.BR zmod (3), +.BR zneg (3), +.BR zabs (3), +.BR zpow (3) diff --git a/man/zdivmod.3 b/man/zdivmod.3 @@ -0,0 +1,50 @@ +.TH ZDIVMOD 3 libzahl +.SH NAME +zdivmod - Calculate the quotient and the remainder of two big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zdivmod(z_t \fIquotient\fP, z_t \fIremainder\fP, z_t \fIdividend\fP, z_t \fIdivisor\fP); +.fi +.SH DESCRIPTION +.B zdivmod +calculates the quotient and the remainder of a +.I dividend +and a +.IR divisor , +and stores the quotient in +.I quotient +and the remainder in +.IR remainder . +That is, +.I quotient +gets +.I dividend +/ +.I divisor +and +.I remainder +gets +.I dividend +Mod +.IR divisor . +.P +It is safe to call +.B zdivmod +with non-unique parameters, +except it is +.I not +safe to call +.B zdivmod with +.IR "(quotient==remainder)" . +.SH SEE ALSO +.BR zstr (3), +.BR zadd (3), +.BR zsub (3), +.BR zmul (3), +.BR zdiv (3), +.BR zmod (3), +.BR zneg (3), +.BR zabs (3), +.BR zpow (3) diff --git a/man/zinit.3 b/man/zinit.3 @@ -43,4 +43,12 @@ typedef struct { .BR znot (3), .BR zlsh (3), .BR zrsh (3), -.BR zsplit (3) +.BR zsplit (3), +.BR zadd (3), +.BR zsub (3), +.BR zmul (3), +.BR zdiv (3), +.BR zmod (3), +.BR zneg (3), +.BR zabs (3), +.BR zpow (3) diff --git a/man/zmod.3 b/man/zmod.3 @@ -0,0 +1,41 @@ +.TH ZMOD 3 libzahl +.SH NAME +zmod - Calculate the modulus of two big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zmod(z_t \fIremainder\fP, z_t \fIdividend\fP, z_t \fIdivisor\fP); +.fi +.SH DESCRIPTION +.B zmod +calculates the remainder of a +.I dividend +and a +.IR divisor , +and stores the result in +.IR remainder . +That is, +.I remainder +gets +.I dividend +Mod +.IR divisor . +.P +The result +.RI ( remainder ) +is always non-negative. +.P +It is safe to call +.B zmod +with non-unique parameters. +.SH SEE ALSO +.BR zdivmod (3), +.BR zstr (3), +.BR zadd (3), +.BR zsub (3), +.BR zmul (3), +.BR zdiv (3), +.BR zneg (3), +.BR zabs (3), +.BR zpow (3) diff --git a/man/zmodmul.3 b/man/zmodmul.3 @@ -0,0 +1,42 @@ +.TH ZMODMUL 3 libzahl +.SH NAME +zmodmul - Calculate the modular product of two big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zmodmul(z_t \fIproduct\fP, z_t \fImultiplier\fP, z_t \fImultiplicand\fP, z_t \fImodulator\fP); +.fi +.SH DESCRIPTION +.B zmodmul +calculates the product of a +.I multiplier +and a +.IR multiplicand , +modulus a +.IR modulator , +and stores the result in +.IR product . +That is, +.I product +gets +.RI ( multiplier +⋅ +.IR multiplicand ) +Mod +.IR modulator . +.P +It is safe to call +.B zmodmul +with non-unique parameters. +.SH SEE ALSO +.BR zmodpow (3), +.BR zstr (3), +.BR zadd (3), +.BR zsub (3), +.BR zmul (3), +.BR zdiv (3), +.BR zmod (3), +.BR zneg (3), +.BR zabs (3), +.BR zpow (3) diff --git a/man/zmodpow.3 b/man/zmodpow.3 @@ -0,0 +1,42 @@ +.TH ZMODPOW 3 libzahl +.SH NAME +zmodpow - Calculate a modular power of a big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zmodpow(z_t \fIpower\fP, z_t \fIbase\fP, z_t \fIexponent\fP, z_t \fImodulator\fP); +.fi +.SH DESCRIPTION +.B zmodpow +calculates the +.IR exponent :th +power of a +.IR base , +modulus a +.IR modulator , +and stores the result in +.IR power . +That is, +.I power +gets +.RI ( base +↑ +.IR exponent ) +Mod +.IR modulator . +.P +It is safe to call +.B zmodpow +with non-unique parameters. +.SH SEE ALSO +.BR zmodmul (3), +.BR zsqr (3), +.BR zstr (3), +.BR zadd (3), +.BR zsub (3), +.BR zmul (3), +.BR zdiv (3), +.BR zmod (3), +.BR zneg (3), +.BR zabs (3) diff --git a/man/zmul.3 b/man/zmul.3 @@ -0,0 +1,38 @@ +.TH ZMUL 3 libzahl +.SH NAME +zmul - Calculate the product of two big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zmul(z_t \fIproduct\fP, z_t \fImultiplier\fP, z_t \fImultiplicand\fP); +.fi +.SH DESCRIPTION +.B zmul +calculates the product of a +.I multiplier +and a +.IR multiplicand , +and stores the result in +.IR product . +That is, +.I product +gets +.I multiplier +⋅ +.IR multiplicand . +.P +It is safe to call +.B zmul +with non-unique parameters. +.SH SEE ALSO +.BR zmodmul (3), +.BR zsqr (3), +.BR zstr (3), +.BR zadd (3), +.BR zsub (3), +.BR zdiv (3), +.BR zmod (3), +.BR zneg (3), +.BR zabs (3), +.BR zpow (3) diff --git a/man/zneg.3 b/man/zneg.3 @@ -0,0 +1,33 @@ +.TH ZNEG 3 libzahl +.SH NAME +zneg - Calculate the negation of a big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zneg(z_t \fIa\fP, z_t \fIb\fP); +.fi +.SH DESCRIPTION +.B zneg +calculates the negation of +.I b +and stores the result in +.IR a . +That is, +.I a +gets +.RI - b . +.P +It is safe to call +.B zneg +with non-unique parameters. +.SH SEE ALSO +.BR zset (3), +.BR zstr (3), +.BR zadd (3), +.BR zsub (3), +.BR zmul (3), +.BR zdiv (3), +.BR zmod (3), +.BR zabs (3), +.BR zpow (3) diff --git a/man/znot.3 b/man/znot.3 @@ -1,6 +1,6 @@ .TH ZNOT 3 libzahl .SH NAME -znot - Calculates the bitwise complement of a big integer +znot - Calculate the bitwise complement of a big integer .SH SYNOPSIS .nf #include <zahl.h> diff --git a/man/zor.3 b/man/zor.3 @@ -1,6 +1,6 @@ .TH ZOR 3 libzahl .SH NAME -zor - Calculates the bitwise inclusive OR of two big integers +zor - Calculate the bitwise inclusive OR of two big integers .SH SYNOPSIS .nf #include <zahl.h> diff --git a/man/zpow.3 b/man/zpow.3 @@ -0,0 +1,38 @@ +.TH ZPOW 3 libzahl +.SH NAME +zpow - Calculate a power of a big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zpow(z_t \fIpower\fP, z_t \fIbase\fP, z_t \fIexponent\fP); +.fi +.SH DESCRIPTION +.B zpow +calculates the +.IR exponent :th +power of a +.IR base , +and stores the result in +.IR power . +That is, +.I power +gets +.I base +↑ +.IR exponent . +.P +It is safe to call +.B zpow +with non-unique parameters. +.SH SEE ALSO +.BR zmodpow (3), +.BR zsqr (3), +.BR zstr (3), +.BR zadd (3), +.BR zsub (3), +.BR zmul (3), +.BR zdiv (3), +.BR zmod (3), +.BR zneg (3), +.BR zabs (3) diff --git a/man/zset.3 b/man/zset.3 @@ -23,4 +23,6 @@ remains unchanged. .BR zseti (3), .BR zsetu (3), .BR zsets (3), -.BR zswap (3) +.BR zswap (3), +.BR zabs (3), +.BR zneg (3) diff --git a/man/zsqr.3 b/man/zsqr.3 @@ -0,0 +1,34 @@ +.TH ZSQR 3 libzahl +.SH NAME +zsqr - Calculate the square of a big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zsqr(z_t \fIsquare\fP, z_t \fIinteger\fP); +.fi +.SH DESCRIPTION +.B zsqr +calculates the square of an +.IR integer , +and stores the result in +.IR square . +That is, +.I square +gets +.IR integer ². +.P +It is safe to call +.B zsqr +with non-unique parameters. +.SH SEE ALSO +.BR zmodmul (3), +.BR zmodpow (3), +.BR zstr (3), +.BR zadd (3), +.BR zsub (3), +.BR zdiv (3), +.BR zmod (3), +.BR zneg (3), +.BR zabs (3), +.BR zpow (3) diff --git a/man/zsub.3 b/man/zsub.3 @@ -0,0 +1,36 @@ +.TH ZSUB 3 libzahl +.SH NAME +zsub - Calculate the difference of two big integer +.SH SYNOPSIS +.nf +#include <zahl.h> + +void zsub(z_t \fIdifference\fP, z_t \fIminuend\fP, z_t \fIsubtrahend\fP); +.fi +.SH DESCRIPTION +.B zsub +calculates the difference of a +.I minuend +and a +.IR subtrahend , +and stores the result in +.IR difference . +That is, +.I difference +gets +.I minuend +- +.IR subtrahend . +.P +It is safe to call +.B zsub +with non-unique parameters. +.SH SEE ALSO +.BR zstr (3), +.BR zadd (3), +.BR zmul (3), +.BR zdiv (3), +.BR zmod (3), +.BR zneg (3), +.BR zabs (3), +.BR zpow (3) diff --git a/man/zxor.3 b/man/zxor.3 @@ -1,6 +1,6 @@ .TH ZXOR 3 libzahl .SH NAME -zxor - Calculates the bitwise exclusive OR (XOR) of two big integers +zxor - Calculate the bitwise exclusive OR (XOR) of two big integers .SH SYNOPSIS .nf #include <zahl.h>