Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/dev-v0.9/translate_mdtv1' into d…
Browse files Browse the repository at this point in the history
…ev-v0.9.1
  • Loading branch information
giopaglia committed Jul 13, 2023
2 parents cb3572e + 9d93998 commit c3e879f
Show file tree
Hide file tree
Showing 11 changed files with 454 additions and 367 deletions.
36 changes: 32 additions & 4 deletions .github/workflows/CompatHelper.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,42 @@ on:
schedule:
- cron: 0 0 * * *
workflow_dispatch:
permissions:
contents: write
pull-requests: write
jobs:
CompatHelper:
runs-on: ubuntu-latest
steps:
- name: Pkg.add("CompatHelper")
run: julia -e 'using Pkg; Pkg.add("CompatHelper")'
- name: CompatHelper.main()
- name: Check if Julia is already available in the PATH
id: julia_in_path
run: which julia
continue-on-error: true
- name: Install Julia, but only if it is not already available in the PATH
uses: julia-actions/setup-julia@v1
with:
version: '1.9'
arch: ${{ runner.arch }}
if: steps.julia_in_path.outcome != 'success'
- name: "Add the General registry via Git"
run: |
import Pkg
ENV["JULIA_PKG_SERVER"] = ""
Pkg.Registry.add("General")
shell: julia --color=yes {0}
- name: "Install CompatHelper"
run: |
import Pkg
name = "CompatHelper"
uuid = "aa819f21-2bde-4658-8897-bab36330d9b7"
version = "3"
Pkg.add(; name, uuid, version)
shell: julia --color=yes {0}
- name: "Run CompatHelper"
run: |
import CompatHelper
CompatHelper.main()
shell: julia --color=yes {0}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COMPATHELPER_PRIV: ${{ secrets.DOCUMENTER_KEY }}
run: julia -e 'using CompatHelper; CompatHelper.main()'
22 changes: 22 additions & 0 deletions .github/workflows/Documentation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Documentation
on:
push:
branches:
- main
tags: '*'
pull_request:

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@latest
with:
version: '1.9'
- name: Install dependencies
run: julia --project=docs/ -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate()'
- name: Build and deploy
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # For authentication with GitHub Actions token
run: julia --project=docs/ docs/make.jl
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up Julia 1.8.0
- name: Set up Julia 1.9.0
uses: julia-actions/setup-julia@v1
with:
version: "1.8.0"
version: "1.9.0"
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-runtest@v1
- uses: julia-actions/julia-processcoverage@v1
Expand Down
4 changes: 2 additions & 2 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name = "SoleModels"
uuid = "4249d9c7-3290-4ddd-961c-e1d3ec2467f8"
authors = ["Eduard I. STAN", "Giovanni PAGLIARINI"]
authors = ["Michele GHIOTTI", "Giovanni PAGLIARINI", "Eduard I. STAN"]
version = "0.1.0"

[deps]
Expand Down Expand Up @@ -40,7 +40,7 @@ ProgressMeter = "1"
Reexport = "1"
Revise = "3"
SoleBase = "0.9.2"
SoleData = "0.9.0"
SoleData = "0.9.1"
SoleLogics = "0.3.0"
StatsBase = "0.34"
Suppressor = "0.2"
Expand Down
9 changes: 5 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@

*SoleModels.jl* defines the building blocks of *symbolic* modeling and learning.
It features:
- Definitions for symbolic models (decision trees/forests, rules, etc.);
- Optimized data structures, useful when learning models from datasets;
- Definitions for symbolic models (decision trees/forests, rules, branches, etc.);
- Optimized data structures, useful when learning models from machine learning datasets;
- Support for mixed, neuro-symbolic computation.

These definitions provide a unified base for implementing symbolic algorithms, such as:
Expand All @@ -32,9 +32,10 @@ These definitions provide a unified base for implementing symbolic algorithms, s

Remember:
- An antecedent is a logical formula that can be checked on a logical interpretation (that is, an *instance* of a symbolic learning dataset), yielding a truth value (e.g., `true/false`);
- A consequent is... anything you want, really, even another model (spoiler: a Branch with Branch consequents is a Decision Tree 😉).
- A consequent is another model, for example, a (final) constant model or branch to be applied.

More specifically, antecedents can be *logical formulas* and, in such case, the symbolic models
Within this framework, a decision tree is no other than a branch with branch and final consequents.
NoteThat antecedents can consist of *logical formulas* and, in such case, the symbolic models
are can be applied to *logical interpretations*.
For more information, refer to [*SoleLogics.jl*](https://github.com/aclai-lab/SoleLogics.jl), the underlying logical layer.

Expand Down
Loading

0 comments on commit c3e879f

Please sign in to comment.