relational/README.md

68 lines
1.4 KiB
Markdown

2015-02-11 09:56:21 +07:00
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.
Official website
================
More documentation can be found here http://ltworf.github.io/relational/
2015-02-11 09:56:21 +07:00
Install
=======
Binary download for Windows can be obtained from the website.
2015-02-11 09:56:21 +07:00
For Linux, check your distribution's packages, relational is available on Debian and Ubuntu.
2015-02-11 10:07:39 +07:00
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)
2015-02-11 10:07:39 +07:00
π a,b(π a,b(A))
ρid➡i,name➡n(π a,b(A))
A ⋈ B
2015-02-11 10:07:39 +07:00
```
2015-02-11 09:56:21 +07:00
Run from sources
================
2015-09-11 07:20:08 +07:00
If it needs some dependencies:
* Qt5
* Python 3.4 or greater
* PyQt5
* pyuic5 and pyrcc5
You will need to run
```
make
```
to generate some .py files.
2015-02-11 09:56:21 +07:00
To launch the application, run
2015-02-11 10:07:39 +07:00
```
./relational_gui.py
```
2015-02-11 09:56:21 +07:00
2015-09-11 07:20:08 +07:00
Running on osx
==============
You can probably follow the instructions on running from sources to
rut on osx.
If you encounter problems, don't ask me for help.
2015-02-11 09:56:21 +07:00
2015-09-11 07:20:08 +07:00
If you encounter problems and overcome them, please tell me how to update this
README.
2015-02-11 09:56:21 +07:00