From 89564d769ad4f01ea94e260f0b992640bf585fc3 Mon Sep 17 00:00:00 2001 From: giopaglia <24519853+giopaglia@users.noreply.github.com> Date: Sun, 25 Feb 2024 14:34:19 +0100 Subject: [PATCH 1/3] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 895654c..1b856df 100644 --- a/README.md +++ b/README.md @@ -77,11 +77,13 @@ Altogether, *Sole.jl* makes for a powerful tool built with an eye to **formal co

--> + ## About From e2457af0ee451bf063571e4af19b70774cccfc5e Mon Sep 17 00:00:00 2001 From: giopaglia <24519853+giopaglia@users.noreply.github.com> Date: Thu, 7 Mar 2024 10:16:27 +0100 Subject: [PATCH 2/3] Update README.md --- README.md | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 1b856df..392c873 100644 --- a/README.md +++ b/README.md @@ -37,36 +37,37 @@ These levels of **transparency** (or *interpretability*) are generally not avail ## Sole.jl -*Sole.jl* is a collection of Julia packages for symbolic learning and reasoning; *Sole.jl* covers **a relatively wide range of functionality** that is of interest for the symbolic community, but it also fills some gaps with a few functionalities for standard machine learning pipelines (e.g., feature selection on multimodal (un)structured data). At the time of writing, the framework comprehends the following packages: -+ [*SoleLogics.jl*](https://github.com/aclai-lab/SoleLogics.jl) lays the **logical foundations** for symbolic learning. It provides a useful codebase for [*computational logic*](https://en.wikipedia.org/wiki/Computational_logic), which features easy manipulation of: +*Sole.jl* is a collection of Julia packages for symbolic learning and reasoning. +Although at an embryonic stage, *Sole.jl* covers a relatively wide range of functionality that is of interest for the symbolic community, but it also fills some gaps with a few functionalities for standard machine learning pipelines. At the time of writing, the framework comprehends the following packages: ++ [*SoleLogics.jl*](https://github.com/aclai-lab/SoleLogics.jl) provides the **logical layer** for symbolic learning. It provides a useful codebase for [*computational logic*](https://en.wikipedia.org/wiki/Computational_logic), which features easy manipulation of: + Propositional and (multi)modal logics (atoms, logical constants, alphabet, grammars, fuzzy algebras); + [Logical formulas](https://en.wikipedia.org/wiki/Well-formed_formula) (random generation, parsing, minimization); + [Logical interpretations](https://en.wikipedia.org/wiki/Interpretation_(logic)) (or models, e.g., [Kripke structures](https://en.wikipedia.org/wiki/Kripke_structure_(model_checking))); + Algorithms for [model checking](https://en.wikipedia.org/wiki/Model_checking) (that is, checking that a formula is satisfied by an interpretation). -+ [*SoleData.jl*](https://github.com/aclai-lab/SoleData.jl) provides a **data layer** built on top of DataFrames.jl/Tables.jl. Its codebase is machine learning oriented and allows to: - + Instantiate and manipulate [*multimodal*](https://en.wikipedia.org/wiki/Multimodal_learning) datasets for (un)supervised machine learning; - + Deal with [*(un)structured* data](https://en.wikipedia.org/wiki/Unstructured_data) (e.g., graphs, images, time-series, etc.); - + Describe datasets via basic statistical measures; - + Save to/load from *npy/npz* format, as well as a custom CSV-based format (with interesting features such as *lazy loading* of datasets); - + Perform basic data processing operations (e.g., windowing, moving average, etc.). ++ [*SoleData.jl*](https://github.com/aclai-lab/SoleData.jl) provides the **data layer** for representing *logisets*, that is, the logical counterpart to machine learning datasets: + + Optimized data structures, useful when learning models from datasets; + + Support for [multimodal data](https://en.m.wikipedia.org/wiki/Multimodal_learning). ++ [*SoleModels.jl*](https://github.com/aclai-lab/SoleModels.jl) defines the building blocks of **symbolic modeling**, featuring: + + Definitions for (logic-agnostic) symbolic models (mainly, decision rules/lists/trees/forests); + + Support for mixed, neuro-symbolic computation. + + Altogether, *Sole.jl* makes for a powerful tool built with an eye to **formal correctness**, and is of use for both machine learning practitioners and computational logicians. **Q:** Ok, so what symbolic learning methods do you people provide? -**A:** At the moment, [*ModalDecisionTrees.jl*](https://github.com/aclai-lab/ModalDecisionTrees.jl) is the only package compatible with Sole.jl, and it provides novel decision tree algorithms based on multimodal temporal and spatial logics for time-series and image classification. Checkout the related [talk at JuliaCon22](https://live.juliacon.org/talk/RQP9TG). +**A:** At the moment, [*ModalDecisionTrees.jl*](https://github.com/aclai-lab/ModalDecisionTrees.jl) is the only package compatible with Sole.jl, and it provides novel decision tree algorithms based on modal temporal and spatial logics for time-series and image classification. Checkout the related [talk at JuliaCon22](https://live.juliacon.org/talk/RQP9TG). **Q:** Why the name? **A:** *Sole* stands for SymbOlic LEarning; it also means "sun" in Italian, a hint to the enlightening power of transparent modeling. From 409fe7be05f629f03ae8a918fc2b1828cff2f085 Mon Sep 17 00:00:00 2001 From: giopaglia <24519853+giopaglia@users.noreply.github.com> Date: Sun, 5 May 2024 15:00:26 +0200 Subject: [PATCH 3/3] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 392c873..ee5c74b 100644 --- a/README.md +++ b/README.md @@ -66,6 +66,8 @@ Although at an embryonic stage, *Sole.jl* covers a relatively wide range of func Altogether, *Sole.jl* makes for a powerful tool built with an eye to **formal correctness**, and is of use for both machine learning practitioners and computational logicians. + + **Q:** Ok, so what symbolic learning methods do you people provide? **A:** At the moment, [*ModalDecisionTrees.jl*](https://github.com/aclai-lab/ModalDecisionTrees.jl) is the only package compatible with Sole.jl, and it provides novel decision tree algorithms based on modal temporal and spatial logics for time-series and image classification. Checkout the related [talk at JuliaCon22](https://live.juliacon.org/talk/RQP9TG).