Skip to content

SavouryGin/chop-logic-core

Chop Logic Core

License: GPL v3 Version codecov build Conventional Commits

Chop Logic Core is a TypeScript library providing core functions for working with symbolic logic formulas. It is part of the broader Chop Logic project and offers essential utilities for propositional logic processing.

🚀 Current Status: The library is under active development, but several tested functions are already available for use in third-party projects.

✨ Features

  • Propositional Converter – Converts logic formulas between different formats.
  • Propositional XML Converter – Converts logic expressions to and from XML.
  • Truth Table Generator – Generates truth tables for given propositional logic formulas.
  • Propositional Executor – Evaluates logical formulas against a set of variable values.
  • Propositional Validator – Checks the syntactic correctness of logic formulas.
  • Propositional Replacer – Replaces logical symbols with alternative representations.

📦 Installation

You can install chop-logic-core via npm:

npm install chop-logic-core

Or using yarn:

yarn add chop-logic-core

🔧 Usage

import { convertFormula, generateTruthTable } from 'chop-logic-core';

const formula = 'A ∧ B → C';
const converted = convertFormula(formula);
console.log(converted);

const truthTable = generateTruthTable(formula);
console.table(truthTable);

⚙️ Available Scripts

The following npm scripts are available for development and maintenance:

  • npm run clean – Removes the generated lib folder.
  • npm run build – Builds both ESM and CJS versions of the library.
  • npm run lint – Runs ESLint to check for code quality issues.
  • npm run lint:fix – Runs ESLint with automatic fixes.
  • npm run test – Runs Jest in watch mode.
  • npm run test:ci – Runs Jest in CI mode, allowing zero tests to pass.
  • npm run coverage – Generates a test coverage report.

🛠 Contributing

Contributions are welcome! If you find a bug or have an idea for improvement, feel free to open an issue or submit a pull request. Please check the Countribution guide for additional info.

  1. Fork the repository.
  2. Clone your fork.
  3. Create a new feature branch.
  4. Implement and test your changes.
  5. Submit a pull request!

📄 License

This project is licensed under LGPL-3.0-or-later. See the LICENSE file for details.

🔗 Links


Let's build better logic tools together! 🚀

About

Library of basic functions for Chop Logic project

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published