Displaying 1 to 20 from 23 results

oso - Oso is a batteries-included library for building authorization in your application.

  •    Rust

Oso is a batteries-included library for building authorization in your application. Oso gives you a mental model and an authorization system – a set of APIs built on top of a declarative policy language called Polar, plus a debugger and REPL – to define who can do what in your application. You can express common concepts from “users can see their own data” and role-based access control, to others like multi-tenancy, organizations and teams, hierarchies and relationships.

precept - A declarative programming framework

  •    Clojure

This will start the todomvc example on localhost:3449 and a nREPL server on localhost:7002. You can interact with the code by calling (cljs) once your REPL is connected. Precept is a framework for creating reactive web applications using a rules engine, declarative logic, and relational data modeling.

the-power-of-prolog - Introduction to modern Prolog

  •    HTML

Prolog is a programming language that is rooted in formal logic. It supports backtracking and unification as built-in features. Prolog allows us to elegantly solve many tasks with short and general programs. The goal of this material is to bridge the gap between the great traditional Prolog textbooks of the past and the language as it currently is, several decades after these books were written. You will see that many limitations of the past are no longer relevant, while several new constructs are now of great importance even though they are not yet covered in any available Prolog book.

pLam - An interpreter for learning and exploring pure λ-calculus

  •    Haskell

pLam (pure Lambda calculus) is a tool to explore, define and evaluate various λ-expressions. Code written in pLam can be executed interactively within pLam's shell or stored in a file with .plam extension and run anytime. Inside import/ directory, many useful λ-expressions are already implemented to be used as libraries.




Caledon - Logic Programming Language

  •    Haskell

Caledon is a dependently typed, polymorphic, higher order logic programming language. ie, everything you need to have a conversation with your computer. A language/system for conversing with the machine in a manner less one sided and instructional than regular programming. It is good at defining DSLs.

atomspace - The OpenCog hypergraph database, query system and rule engine

  •    C++

The OpenCog AtomSpace is a knowledge representation (KR) database and the associated query/reasoning engine to fetch and manipulate that data, and perform reasoning on it. Data is represented in the form of graphs, and more generally, as hypergraphs; thus the AtomSpace is a kind of graph database, the query engine is a general graph re-writing system, and the rule-engine is a generalized rule-driven inferencing system. The vertices and edges of a graph, known as "Atoms", are used to represent not only "data", but also "procedures"; thus, many graphs are executable programs as well as data structures. The AtomSpace is a platform for building Artificial General Intelligence (AGI) systems. It provides the central knowledge representation component for OpenCog. As such, it is a fairly mature component, on which a lot of other systems are built, and which depend on it for stable, correct operation in a day-to-day production environment.

knowledge - combining wikidata and clojure core.logic

  •    Clojure

A Clojure experimental library combining wikidata and clojure core.logic. Distributed under the Eclipse Public License, the same as Clojure.


hopes - Higher Order Prolog with Extensional Semantics

  •    Haskell

HOPES is a prototype interpreter for a higher-order PROLOG-like language. The syntax of the language extends that of PROLOG by supporting higher-order constructs (such as higher-order predicate variables, partial application and lambda terms). In particular, the syntax allows clauses (and queries) that contain uninstantiated predicate variables. The interpreter implements a higher-order top-down SLD-resolution proof procedure described in CKRW13 together with the semantics of the language.

Logician - Logic programming in Swift

  •    Swift

Logic programming is a declarative style of programming that uses constraints to describe problems. Instead of writing a solution to the problem, you describe the characteristics of the solution and let the computer solve it for you. Different logic programming implementations contain different types of constraints.

poprc - A Compiler for the Popr Language

  •    C

This project is to implement a compiler for the Popr (previously Peg) language. The language has changed somewhat to support efficient compilation and type checking. Please see this presentation for more information.

haskell-picosat - Haskell bindings for PicoSAT solver

  •    C

haskell-picosat are Haskell bindings to the PicoSAT solver, written in C. It reads in clauses in CNF ( Conjunctive-Normal Form ) and returns a solution which satisfies the clauses. The most notable distinction of this binding is that the SAT solver library is included with the cabal package so you shouldn't need to install anything but this package to get going. It's also notably faster than a pure Haskell solution at solving very large constraint problems.

zamia-prolog - Embeddable Prolog dialect implemented in pure Python

  •    Python

Scalable and embeddable compiler/interpreter for a Zamia-Prolog (a Prolog dialect). Stores its knowledge base in a Database via SQLAlchemy - hence the scalability, i.e. the knowledge base is not limited by the amount of RAM available. Zamia-Prolog is written in pure python so it can be easily embedded into other python applications. Compiler and runtime have interfaces to register custom builtins which can either be evaluated at compile time (called directives in Zamia-Prolog) or at runtime.

challenge-lima - Desafio de programação

  •    

Imagine que a região aonde os drones devem sobrevoar é um plano de X por Y metros e os drones só vão se locomover dentro desse plano de metro em metro (logo eles se locomovem em um grid) e a cada ponto de parada eles vão tirar uma foto 360º. Quando eles são ligados, devem receber uma cordenada cartesiana de para onde eles vão se posicionar e para qual lado do bússula a camêra deve estar apontando, por exemplo (4, 3, N) levará o drone para as coordenadas 4metros no eixo X e 3metros no eixo Y, apontando a câmera para norte. Os pontos cardeais esperados são 4: (N)orte, (S)ul, (L)este e (O)este.

Brachylog - A terse declarative logic programming language

  •    Prolog

Brachylog is a declarative logic programming language much like Prolog. Brachylog is designed to be much terser than Prolog, while retaining some readability. Currently in development.

gini - A fast SAT solver

  •    Go

The Gini sat solver is a fast, clean SAT solver written in Go. It is to our knowledge the first ever performant pure-Go SAT solver made available. This solver is fully open source, originally developped at IRI France.

neural-logic-machines - Implementation for the Neural Logic Machines (NLM).

  •    Python

PyTorch implementation for the Neural Logic Machines (NLM). Please note that this is not an officially supported Google product. Neural Logic Machine (NLM) is a neural-symbolic architecture for both inductive learning and logic reasoning. NLMs use tensors to represent logic predicates. This is done by grounding the predicate as True or False over a fixed set of objects. Based on the tensor representation, rules are implemented as neural operators that can be applied over the premise tensors and generate conclusion tensors.

gominikanren - a Go implementation of miniKanren, an embedded Domain Specific Language for logic programming

  •    Go

gominikarnen is an implementation of miniKanren in Go. miniKanren is an embedded Domain Specific Language for logic programming.

cplint - cplint is a suite of programs for reasoning with probabilistic logic programs

  •    C

cplint is a suite of programs for reasoning with probabilistic logic programs. It contains programs for both inference and learning. This is a SWI-Prolog (http://www.swi-prolog.org/) pack.

Jatalog - Java Datalog Engine with Semi-Naive Evaluation and Stratified Negation

  •    Java

Datalog is a subset of the Prolog programming language that is used as a query language in deductive databases[wiki]. Jatalog is a Datalog implementation in Java. It provides a parser for the language and an evaluation engine to execute queries that can be embedded into larger applications.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.