IsIrreducible( r )
IsIrreducible(
R, r )
In the first form IsIrreducible returns true if the
ring element r is irreducible in its default ring (see
DefaultRing) and false otherwise. In the second form IsIrreducible
returns true if the ring element r is irreducible in
the ring R and false otherwise.
An element r of a ring R is called irreducible if there is no nontrivial factorization of r in R, i.e., if there is no representation of r as product s t such that neither s nor t is a unit (see IsUnit). Each prime element (see IsPrime) is irreducible.
gap> IsIrreducible( Integers, 4 );
false
gap> IsIrreducible( Integers, 3 );
true
IsIrreducible calls R.operations.IsIrreducible(
R, r ) and returns the value.
The default function called this way is RingOps.IsIrreducible,
which justs signals an error, because there is no generic way to test whether
an element is irreducible. Thus special categories of rings must overlay this
default function with other functions.