fd8d0089de | ||
---|---|---|
debian | ||
feedback-ltworf | ||
relational | ||
relational_curses | ||
relational_gui | ||
relational_pyside | ||
relational_readline | ||
samples | ||
setup | ||
test | ||
website | ||
windows | ||
.gitignore | ||
CHANGELOG | ||
COPYING | ||
CREDITS | ||
Makefile | ||
README.md | ||
TODO | ||
complexity | ||
driver.py | ||
relational-cli.1 | ||
relational.1 | ||
relational.desktop | ||
relational_gui.py |
README.md
Relational an educational tool to provide a workspace for experimenting with relational algebra, an offshoot of first-order logic.
It provides GUI that can be used for executing relational queries, and also provides a command line interface.
Provides a standalone Python module that can be used for executing relational queries, parsing relational expressions and optimizing them.
Install
Windows installer can be found here: https://code.google.com/p/relational/downloads/list
For Linux, check your distribution's packages, relational is available on Debian and Ubuntu.
Syntax
These are some valid queries
σage > 25 and rank == weight(A)
σ (name.upper().startswith('J') and age>21 )(people)
Q ᐅᐊ π a,b(A) ᐅᐊ B
ρid➡i,name➡n(A) - π a,b(π a,b(A)) ᑎ σage > 25 or rank = weight(A)
π a,b(π a,b(A))
ρid➡i,name➡n(π a,b(A))
A ᐅᐊ B
Formal language definition at this link https://github.com/ltworf/relational/wiki/Grammar-and-language
Run from sources
To launch the application, run
./relational_gui.py
If it needs some dependencies: Qt4, Python 2.7, either PyQT4 or Pyside.
It can run on osx but this is not supported.