public class RootsGenerator extends java.lang.Object implements TermGenerator
Modifier and Type | Field and Description |
---|---|
private java.math.BigInteger |
one |
private ProjectionToTerm |
powerRelation |
private TermBuilder |
tb |
private java.math.BigInteger |
two |
Modifier | Constructor and Description |
---|---|
private |
RootsGenerator(ProjectionToTerm powerRelation,
TermBuilder tb) |
Modifier and Type | Method and Description |
---|---|
private Term |
breakDownEq(Term var,
java.math.BigInteger lit,
int pow,
TermServices services) |
private Term |
breakDownGeq(Term var,
java.math.BigInteger lit,
int pow,
TermServices services) |
private Term |
breakDownLeq(Term var,
java.math.BigInteger lit,
int pow,
TermServices services) |
static TermGenerator |
create(ProjectionToTerm powerRelation,
TermServices services) |
private java.util.Iterator<Term> |
emptyIterator() |
java.util.Iterator<Term> |
generate(RuleApp app,
PosInOccurrence pos,
Goal goal) |
private java.math.BigInteger |
posRoot(java.math.BigInteger prod,
int exp) |
private java.math.BigInteger |
power(java.math.BigInteger base,
int exp) |
private java.math.BigInteger |
root(java.math.BigInteger prod,
int exp) |
private java.math.BigInteger |
rootRoundingUpwards(java.math.BigInteger prod,
int exp) |
private java.util.Iterator<Term> |
toIterator(Term res) |
private final ProjectionToTerm powerRelation
private final TermBuilder tb
private final java.math.BigInteger one
private final java.math.BigInteger two
private RootsGenerator(ProjectionToTerm powerRelation, TermBuilder tb)
public static TermGenerator create(ProjectionToTerm powerRelation, TermServices services)
public java.util.Iterator<Term> generate(RuleApp app, PosInOccurrence pos, Goal goal)
generate
in interface TermGenerator
private java.util.Iterator<Term> emptyIterator()
private Term breakDownEq(Term var, java.math.BigInteger lit, int pow, TermServices services)
private Term breakDownGeq(Term var, java.math.BigInteger lit, int pow, TermServices services)
private Term breakDownLeq(Term var, java.math.BigInteger lit, int pow, TermServices services)
private java.math.BigInteger rootRoundingUpwards(java.math.BigInteger prod, int exp)
private java.math.BigInteger root(java.math.BigInteger prod, int exp)
private java.math.BigInteger posRoot(java.math.BigInteger prod, int exp)
private java.math.BigInteger power(java.math.BigInteger base, int exp)