Skip to content

Bachelor thesis: design and implementation in Picat of a set constraint solver.

License

Notifications You must be signed in to change notification settings

lparolari/bachelor-thesis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My Bachelor Thesis

GitHub

Travis (.org) GitHub release (latest SemVer) GitHub All Releases

Design and implementation in Picat of a set constraint solver

This repository contains the latest version of my thesis. This thesis is about the design and the implementation of a set constraint solver in Picat. Chapter 1 gives a background on logic programming and constraint logic programming; then in the Chapter 2 it describes Picat, the language on which L_SET was implemented. In the Chapter 3 and 4, it shows some design choices and implementation details. The Chapter 5 is on how to use the solver, while the Chapter 6 discuss about conclusions and future works. Please if you find it useful click the ⭐ button, I'll really appreciate it!

This thesis project is highly related to the setlog-picat project, which contains the source code of the solver described in the thesis. You can find the presentation for this thesis here.

Download

Download the latest version of thesis.pdf from here, or browse the releases here.

Usage

You can download the source code to your local machine with the following commands.

# download it
git clone https://github.com/lparolari/bachelor-thesis
# and make it your!
cd backelor-thesis
rm -rf .git

In order to compile the sources you can use the Makefile with the following commands.

make pdf1    # compiles the sources with pdflatex and biber
make pdf2    # compiles the sources with docker

You can use a shortcut for pdf files:

make pdf     # equivalent to `make pdf1` (with pdflatex)

or, you can even use internal targets like pdflatex, pdfdocker, biber to make custom builds.

Then you can read compiled sources with

make read

Author

Acknowledgments