Skip to content

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

[0.3.0] - 24.02.2024

Breaking changes

  • Direct inference agent's subscription element is changed to action_initiated
  • Build system is changed to build system used by sc-machine 0.10.0
  • The names of the public methods were consistent with the names of the sc-machine methods

Fixed

  • Deprecated sc-types are no longer in use

Changed

  • Upgrade build system to build system used by sc-machine 0.10.0
  • TemplateSearcherOnlyAccessEdgesInStructures is renamed to TemplateSearcherOnlyMembershipArcsInStructures

Removed

  • Codegen for agents

[v0.2.0]

Breaking changes

  • Direct inference manager was removed. To create DirectInferenceManagerTarget use InferenceManagerFactory::constructDirectInferenceManagerTarget with config {GENERATE_ALL_FORMULAS, ALL, TREE_ONLY_OUTPUT_STRUCTURE}

Added

  • InferenceConfig uses ScAddrUnorderedSet to store input structures
  • Allow edges substitution from replacements in atomic logical formula search and generation
  • Solution removal agent
  • Template searcher abstract with new implementation: TemplateSearcherOnlyAccessEdgesInStructures
  • Inference flow config to control generation unique formulas, only first formula and solution tree
  • Solution tree manager abstract with new implementation: SolutionTreeManagerEmpty
  • Template manager abstract with new implementation: TemplateManagerFixedArguments
  • Template searcher abstract with new implementation: TemplateSearcherInStructures
  • Inference config and factory to create inference manager
  • Inference manager abstract with new implementation: InferenceManagerAll
  • Finish agent work if exception occurred
  • Unify interfaces with old 3-argument applying inference
  • New tests for logic module with argument checking and with complex rules
  • Add pre-commit
  • Add clang format check
  • Add opportunity to generate and search in structure for DirectInferenceAgent
  • Add opportunity to only search and check formula, but not generate
  • Add mechanism for substitution values into variables
  • Documentation in scn-tex format
  • README
  • Changelog
  • Add always generating for conclusion in implication
  • Add arguments to sub formulas in conjunction and disjunction
  • Add conjunction generation
  • Add parameters to solution tree

Fixed

  • Atomic logical formula generation with GENERATE_UNIQUE_FORMULAS mode
  • Agent initiation in tests
  • Clang formatter
  • Fixed template params creating with no arguments
  • Fixed applying rules chain

Changed

  • All questions are replaced with actions
  • ScAddrHashSet is renamed to ScAddrUnorderedSet
  • InferenceConfig is added to inference namespace
  • Template search in structures checks if element is in structure instead of check if structure has element
  • Logic formula generation results are passed as method arguments instead of return values
  • Replacements results are passed as method arguments instead of return values
  • Replacements union use hashes to improve performance
  • Replacements operations use hashes to improve performance
  • Replacements are now calculated for all variables in atomic logical formulas
  • Replace DirectInferenceManager logic with configured InferenceManagerTarget
  • Remove return logic expression result in LogicExpressionNode
  • Separate manager and searcher files to the subdirectories
  • Separate logical connectives classes
  • Rename variables, log message concepts and methods according to the Standard concepts
  • Separate tests for simple formulas, complex formulas and agent arguments
  • Move to 0.7.0 ostis-web-platform
  • Changed condition for applying generation(generate if this rule with this parameters wasn't applied yet)

Removed

  • Cache of input structures in TemplateSearcherInStructures
  • Unused and duplicated keynodes
  • check method of LogicExpressionNode
  • Unused and unimplemented agents

[v0.1.0]

  • Direct inference agent for implications
  • Template generation agent
  • Reverse inference agent for implications