chop-logic-core
Version:
Core classes, methods and functions for calculating logical formulas and constructing proofs within the Chop Logic project.
23 lines (22 loc) • 1.3 kB
TypeScript
import type { PropExpression, PropFormula, PropSymbol } from "../../models";
/**
* Converts a well-formed propositional expression into a tree-like PropFormula.
*
* @param expression - A validated propositional expression.
* @returns The corresponding PropFormula.
* @throws {Error} If the expression is not a well-formed formula.
* @category Builders
*/
export declare function createPropFormula(expression: PropExpression): PropFormula;
export declare function parseExpression({ expression, start, end, }: {
expression: PropExpression;
start: number;
end: number;
}): PropFormula;
export declare function isSingleVariable(expression: PropExpression, start: number, end: number): boolean;
export declare function parseVariable(symbol: PropSymbol): PropFormula;
export declare function isNegation(expression: PropExpression, start: number): boolean;
export declare function parseNegation(expression: PropExpression, start: number, end: number): PropFormula;
export declare function isParenthesized(expression: PropExpression, start: number, end: number): boolean;
export declare function parseBinaryExpression(expression: PropExpression, start: number, end: number): PropFormula;
export declare function findMainOperator(expression: PropExpression, start: number, end: number): number;