| Package | Description |
|---|---|
| com.bpodgursky.jbool_expressions | |
| com.bpodgursky.jbool_expressions.cache | |
| com.bpodgursky.jbool_expressions.options | |
| com.bpodgursky.jbool_expressions.rules |
| Modifier and Type | Method | Description |
|---|---|---|
static <K> Expression<K>[] |
ExprUtil.allExceptMatch(Expression<K>[] exprs,
Expression<K> omit,
ExprOptions<K> options) |
|
static <K> Expression<K>[] |
ExprUtil.allExceptMatch(Collection<Expression<K>> exprs,
Set<? extends Expression<K>> omit,
ExprOptions<K> options) |
|
static <K> Expression<K>[] |
ExprUtil.allExceptMatch(List<Expression<K>> exprs,
Expression<K> omit,
ExprOptions<K> options) |
|
Expression<K> |
And.apply(RuleList<K> rules,
ExprOptions<K> options) |
|
abstract Expression<K> |
Expression.apply(RuleList<K> rules,
ExprOptions<K> cache) |
|
Expression<K> |
Literal.apply(RuleList<K> rules,
ExprOptions<K> options) |
|
Expression<K> |
Not.apply(RuleList<K> rules,
ExprOptions<K> options) |
|
Expression<K> |
Or.apply(RuleList<K> rules,
ExprOptions<K> options) |
|
Expression<K> |
Variable.apply(RuleList<K> rules,
ExprOptions<K> options) |
|
static <K> Expression<K> |
ExprUtil.collapseToSOP(And<K> and,
Or<K> internalOr,
Expression<K> omitFromOr,
ExprOptions<K> options) |
|
static <K> List<K> |
ExprUtil.getConstraintsByWeight(Expression<K> expression,
ExprOptions<K> options) |
|
static <K> Expression<K> |
ExprUtil.stripNegation(And<K> and,
Or<K> internalOr,
Expression<K> omitFromOr,
ExprOptions<K> options) |
|
static <K> Expression<K> |
ExprUtil.stripNegation(Or<K> or,
And<K> internalAnd,
Expression<K> omitFromAnd,
ExprOptions<K> options) |
| Modifier and Type | Method | Description |
|---|---|---|
void |
RuleCache.NoCache.put(Class<? extends Rule> rule,
Expression<K> input,
Expression<K> output,
ExprOptions<K> options) |
|
void |
RuleCache.put(Class<? extends Rule> rule,
Expression<K> input,
Expression<K> output,
ExprOptions<K> options) |
|
void |
RuleSetCache.NoCache.put(RuleList<K> rules,
Expression<K> input,
Expression<K> output,
ExprOptions<K> options) |
|
void |
RuleSetCache.put(RuleList<K> rules,
Expression<K> input,
Expression<K> output,
ExprOptions<K> options) |
|
void |
UnboundedRuleCache.put(Class<? extends Rule> rule,
Expression<K> input,
Expression<K> output,
ExprOptions<K> options) |
|
void |
UnboundedRuleSetCache.put(RuleList<K> rules,
Expression<K> input,
Expression<K> output,
ExprOptions<K> options) |
| Modifier and Type | Method | Description |
|---|---|---|
static <K> ExprOptions<K> |
ExprOptions.allCacheIntern() |
Cache all rule results, and also intern all expressions for maximum memory optimization
|
static <K> ExprOptions<K> |
ExprOptions.noCaching() |
No caching, no interning
|
static <K> ExprOptions<K> |
ExprOptions.onlyCaching() |
Cache all rule results, don't intern anything
|
| Modifier and Type | Method | Description |
|---|---|---|
Expression<K> |
Rule.apply(Expression<K> input,
ExprOptions<K> options) |
|
static <K> Expression<K> |
RulesHelper.applyAll(Expression<K> e,
RuleList<K> rules,
ExprOptions<K> options) |
|
Expression<K> |
CollapseNegation.applyInternal(NExpression<K> input,
ExprOptions<K> options) |
|
Expression<K> |
CombineAnd.applyInternal(And<K> and,
ExprOptions<K> options) |
|
Expression<K> |
CombineOr.applyInternal(Or<K> or,
ExprOptions<K> options) |
|
Expression<K> |
DeMorgan.applyInternal(Not<K> not,
ExprOptions<K> options) |
|
Expression<K> |
QMC.applyInternal(Expression<K> input,
ExprOptions<K> options) |
|
abstract Expression<K> |
Rule.applyInternal(E input,
ExprOptions<K> options) |
|
Expression<K> |
SimplifyAnd.applyInternal(And<K> input,
ExprOptions<K> options) |
|
Expression<K> |
SimplifyNExprChildren.applyInternal(NExpression<K> input,
ExprOptions<K> options) |
|
Expression<K> |
SimplifyNExpression.applyInternal(NExpression<K> input,
ExprOptions<K> options) |
|
Expression<K> |
SimplifyNot.applyInternal(Not<K> input,
ExprOptions<K> options) |
|
Expression<K> |
SimplifyOr.applyInternal(Or<K> input,
ExprOptions<K> options) |
|
Expression<K> |
ToSOP.applyInternal(And<K> and,
ExprOptions<K> options) |
|
static <K> Expression<K> |
RulesHelper.applySet(Expression<K> root,
RuleList<K> allRules,
ExprOptions<K> options) |
|
static <K> Expression<K> |
QuineMcCluskey.assign(Expression<K> root,
Map<K,Boolean> values,
RuleList<K> simplifyRules,
ExprOptions<K> options) |
|
static <K> Expression<K> |
RuleSet.assign(Expression<K> root,
Map<K,Boolean> values,
ExprOptions<K> options) |
|
static <K> void |
QuineMcCluskey.findMinterms(int pos,
ArrayList<K> variables,
Expression<K> input,
Map<K,Boolean> assignments,
List<Integer> collectedMinterms,
RuleList<K> simplifyRules,
ExprOptions<K> options) |
|
static <K> List<Integer> |
QuineMcCluskey.findMinterms(int pos,
ArrayList<K> variables,
Map<K,Boolean> assignments,
Expression<K> input,
RuleList<K> simplifyRules,
ExprOptions<K> options) |
|
static <K> Expression<K> |
RuleSet.simplify(Expression<K> root,
ExprOptions<K> options) |
|
static <K> Expression<K> |
RuleSet.toCNF(Expression<K> root,
ExprOptions<K> options) |
More formal name for product-of-sums
|
static <K> Expression<K> |
QuineMcCluskey.toDNF(Expression<K> input,
ExprOptions<K> options) |
|
static <K> Expression<K> |
RuleSet.toDNF(Expression<K> root,
ExprOptions<K> options) |
More formal name for sum-of-products
|
static <K> Expression<K> |
RuleSet.toDNFViaQMC(Expression<K> root,
ExprOptions<K> options) |
This method transforms an expression to DNF, but at a variable cardinality less than 9, switches to the QuineMcCluskey algorithm.
|
static <K> Expression<K> |
RuleSet.toPos(Expression<K> root,
ExprOptions<K> options) |
|
static <K> Expression<K> |
RuleSet.toSop(Expression<K> root,
ExprOptions<K> options) |
Copyright © 2019. All rights reserved.