Giter Site home page Giter Site logo

ostis-ai / scl-machine Goto Github PK

View Code? Open in Web Editor NEW
14.0 3.0 7.0 4.61 MB

Software implementation of logic inference machine

License: Apache License 2.0

CMake 1.51% C++ 96.57% Shell 0.19% Python 1.73%
logic logic-programming ostis logic-inference

scl-machine's Introduction

SCL-machine

Inference module for OSTIS Metasystem

Installation

git clone https://github.com/ostis-ai/scl-machine.git
cd scl-machine/
git submodule update --init --recursive

Build scl-machine

Before build scl-machine make sure that sc-machine is assembled. Sc-machine and scl-machine must be allocated in the same folder.

cd scl-machine/scripts
./make_all.sh #You can also pass all CMake generation arguments there

Or, alternatively (requires CMake 3.13+)

cd scl-machine
cmake -B build -DCMAKE_BUILD_TYPE=Release # or Debug type for development
cmake --build build -j$(nproc) # -j flag for paralleled build process

To include scl-machine knowledge base add <path to >/scl-machine/kb to repo.path file.

Documentation

We document all information about the project development and its components' implementation in sources of its knowledge base to provide opportunity to use it in information processing and knowledge generation.

You can access the current version of the documentation in docs/main.pdf file of this project.

Documentation is written with the help of LaTeX tools in SCn-code representation. To build documentation manually, you'll need a LaTeX distribution installed on your computer. Alternatively, we provide a Docker image to build the documentation in case you can't / don't want to install LaTeX on your PC.

Download scn-tex-plugin and documentation for subprojects

  • Build steps (using LaTeX)

    cd scl-machine/docs
    TEXINPUTS=./scn: latexmk -pdf -bibtex main.tex
  • Build steps (using Docker)

    cd scl-machine
    docker run -v ${PWD}:/workdir --rm -it ostis/scn-latex-plugin:latest "docs/main.tex"

After the compilation, the main.pdf file should appear at scl-machine/docs/.

Feedback

Contributions, bug reports and feature requests are welcome! Feel free to check our issues page and file a new issue (or comment in existing ones).

License

Distributed under the Apache License. See LICENSE for more information.

This repository continues the development of ostis-apps/ostis-inference

scl-machine's People

Contributors

fallenchromium avatar jijjijj avatar kilativ-dotcom avatar kovalm avatar mksmorlov avatar nepare avatar nikiforovsergei avatar nikitazotov avatar ruslankorshunov avatar shtress avatar valikvityaz avatar vikort avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

scl-machine's Issues

Fix inference flow when the same rules set is checking again

Describe the bug
After generating by a formula from a set of formulas x, they continue to be applied within this set x, after which all sets of formulas are traversed again. Further, nothing can be generated in the previous sets, and the set of x-formulas is run again, although this is not necessary.

Priorities must be handled in the inference or in the agent using it

Reduce formulas checking

Is your feature request related to a problem? Please describe.
It is necessary to consider only those rules that contain the classes of the current set of parameters in their left part.

Implement common logic of DI

Is your feature request related to a problem? Please describe.
Implement inference rules logic according to OSTIS-22 Orlov , Vasilevskaya paper

Remove dynamic cast

Describe the bug
Conjunction, disjunction and equivalence processing include dynamic cast and checking if null. Need to use polymorphism

Update project licence

Describe the bug
There is MIT and apache licence. Choose one, use single-style file headers

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.