Merge branch 'master' of https://github.com/vscosta/yap-6.3
This commit is contained in:
commit
e163ccb6c0
185
README.md
185
README.md
@ -1,93 +1,92 @@
|
|||||||
``
|
<p align="center">
|
||||||
<center>
|
<img src="./docs/icons/yap_128x128x32.png" alt="The YAP Logo"/>
|
||||||

|
</p>
|
||||||
</center>
|
|
||||||
|
NOTE: this version of YAP is still experimental, documentation may be out of date.
|
||||||
NOTE: this version of YAP is still experimental, documentation may be out of date.
|
|
||||||
|
## Introduction
|
||||||
## Introduction
|
|
||||||
|
This document provides User information on version 6.3.4 of
|
||||||
This document provides User information on version 6.3.4 of
|
YAP (<em>Yet Another Prolog</em>). The YAP Prolog System is a
|
||||||
YAP (<em>Yet Another Prolog</em>). The YAP Prolog System is a
|
high-performance Prolog compiler developed at Universidade do
|
||||||
high-performance Prolog compiler developed at Universidade do
|
Porto. YAP supports stream Input/Output, sockets, modules,
|
||||||
Porto. YAP supports stream Input/Output, sockets, modules,
|
exceptions, Prolog debugger, C-interface, dynamic code, internal
|
||||||
exceptions, Prolog debugger, C-interface, dynamic code, internal
|
database, DCGs, saved states, co-routining, arrays, threads.
|
||||||
database, DCGs, saved states, co-routining, arrays, threads.
|
|
||||||
|
We explicitly allow both commercial and non-commercial use of YAP.
|
||||||
We explicitly allow both commercial and non-commercial use of YAP.
|
|
||||||
|
|
||||||
|
YAP is based on the David H. D. Warren's WAM (Warren Abstract Machine),
|
||||||
YAP is based on the David H. D. Warren's WAM (Warren Abstract Machine),
|
with several optimizations for better performance. YAP follows the
|
||||||
with several optimizations for better performance. YAP follows the
|
Edinburgh tradition, and was originally designed to be largely
|
||||||
Edinburgh tradition, and was originally designed to be largely
|
compatible with DEC-10 Prolog, Quintus Prolog, and especially with
|
||||||
compatible with DEC-10 Prolog, Quintus Prolog, and especially with
|
C-Prolog. More recently, we have worked on being compatible with SICStus Prolog and with SWI-Prolog.
|
||||||
C-Prolog. More recently, we have worked on being compatible with SICStus Prolog and with SWI-Prolog.
|
|
||||||
|
YAP implements most of the ISO-Prolog standard. We are striving at
|
||||||
YAP implements most of the ISO-Prolog standard. We are striving at
|
full compatibility, and the manual describes what is still
|
||||||
full compatibility, and the manual describes what is still
|
missing.
|
||||||
missing.
|
The document is intended neither as an introduction to Prolog nor to the
|
||||||
The document is intended neither as an introduction to Prolog nor to the
|
implementation aspects of the compiler. A good introduction to
|
||||||
implementation aspects of the compiler. A good introduction to
|
programming in Prolog is the book @cite TheArtOfProlog , by
|
||||||
programming in Prolog is the book @cite TheArtOfProlog , by
|
L. Sterling and E. Shapiro, published by "The MIT Press, Cambridge
|
||||||
L. Sterling and E. Shapiro, published by "The MIT Press, Cambridge
|
MA". Other references should include the classical @cite ProgrammingInProlog , by W.F. Clocksin and C.S. Mellish, published by
|
||||||
MA". Other references should include the classical @cite ProgrammingInProlog , by W.F. Clocksin and C.S. Mellish, published by
|
Springer-Verlag.
|
||||||
Springer-Verlag.
|
|
||||||
|
YAP 6.3.4 has been built with the gcc and clang compilers on Linux and OSX machines. We expect to recover support for WIN32 machines and
|
||||||
YAP 6.3.4 has been built with the gcc and clang compilers on Linux and OSX machines. We expect to recover support for WIN32 machines and
|
Android next.
|
||||||
Android next.
|
|
||||||
|
We are happy to include in YAP several excellent packages developed
|
||||||
We are happy to include in YAP several excellent packages developed
|
under separate licenses. Our thanks to the authors for their kind
|
||||||
under separate licenses. Our thanks to the authors for their kind
|
authorization to include these packages.
|
||||||
authorization to include these packages.
|
|
||||||
|
The overall copyright and permission notice for YAP4.3 can be found in
|
||||||
The overall copyright and permission notice for YAP4.3 can be found in
|
the Artistic file in this directory. YAP follows the Perl Artistic
|
||||||
the Artistic file in this directory. YAP follows the Perl Artistic
|
license, and it is thus non-copylefted freeware. Some components of YAP have been obtained from SWI Prolog and ciao, and have
|
||||||
license, and it is thus non-copylefted freeware. Some components of YAP have been obtained from SWI Prolog and ciao, and have
|
different licenses.
|
||||||
different licenses.
|
|
||||||
|
If you have a question about this software, desire to add code, found a
|
||||||
If you have a question about this software, desire to add code, found a
|
bug, want to request a feature, or wonder how to get further assistance,
|
||||||
bug, want to request a feature, or wonder how to get further assistance,
|
please send e-mail to <yap-users AT lists.sourceforge.net>. To
|
||||||
please send e-mail to <yap-users AT lists.sourceforge.net>. To
|
subscribe to the mailing list, visit the page
|
||||||
subscribe to the mailing list, visit the page
|
<https://lists.sourceforge.net/lists/listinfo/yap-users>.
|
||||||
<https://lists.sourceforge.net/lists/listinfo/yap-users>.
|
|
||||||
|
On-line documentation is available for [YAP](http://www.dcc.fp.pt/~vsc/yap/)
|
||||||
On-line documentation is available for [YAP](http://www.dcc.fp.pt/~vsc/yap/)
|
|
||||||
|
|
||||||
|
|
||||||
|
The packages are, in alphabetical order:
|
||||||
The packages are, in alphabetical order:
|
|
||||||
|
+ The CHR package developed by Tom Schrijvers,
|
||||||
+ The CHR package developed by Tom Schrijvers,
|
Christian Holzbaur, and Jan Wielemaker.
|
||||||
Christian Holzbaur, and Jan Wielemaker.
|
|
||||||
|
+ The CLP(BN) package and Horus toolkit developed by Tiago Gomes, and Vítor Santos Costa.
|
||||||
+ The CLP(BN) package and Horus toolkit developed by Tiago Gomes, and Vítor Santos Costa.
|
|
||||||
|
+ The CLP(R) package developed by Leslie De Koninck, Bart Demoen, Tom
|
||||||
+ The CLP(R) package developed by Leslie De Koninck, Bart Demoen, Tom
|
Schrijvers, and Jan Wielemaker, based on the CLP(Q,R) implementation
|
||||||
Schrijvers, and Jan Wielemaker, based on the CLP(Q,R) implementation
|
by Christian Holzbaur.
|
||||||
by Christian Holzbaur.
|
|
||||||
|
+ The CPLint package developed by Fabrizio Riguzzi's research
|
||||||
+ The CPLint package developed by Fabrizio Riguzzi's research
|
laboratory at the [University of Ferrara](http://www.ing.unife.it/Docenti/FabrizioRiguzzi/)
|
||||||
laboratory at the [University of Ferrara](http://www.ing.unife.it/Docenti/FabrizioRiguzzi/)
|
|
||||||
|
+ The CUDA interface package developed by Carlos Martínez, Jorge
|
||||||
+ The CUDA interface package developed by Carlos Martínez, Jorge
|
Buenabad, Inês Dutra and Vítor Santos Costa.
|
||||||
Buenabad, Inês Dutra and Vítor Santos Costa.
|
|
||||||
|
+ The [GECODE](http://www.gecode.org) interface package developed by Denys Duchier and Vítor Santos Costa.
|
||||||
+ The [GECODE](http://www.gecode.org) interface package developed by Denys Duchier and Vítor Santos Costa.
|
|
||||||
|
+ The [JPL](http://www.swi-prolog.org/packages/jpl/) (Java-Prolog Library) package developed by .
|
||||||
+ The [JPL](http://www.swi-prolog.org/packages/jpl/) (Java-Prolog Library) package developed by .
|
|
||||||
|
The minisat SAT solver interface developed by Michael Codish,
|
||||||
The minisat SAT solver interface developed by Michael Codish,
|
Vitaly Lagoon, and Peter J. Stuckey.
|
||||||
Vitaly Lagoon, and Peter J. Stuckey.
|
|
||||||
|
+ The MYDDAS relational data-base interface developed at the
|
||||||
+ The MYDDAS relational data-base interface developed at the
|
Universidade do Porto by Tiago Soares, Michel Ferreira, and Ricardo Rocha.
|
||||||
Universidade do Porto by Tiago Soares, Michel Ferreira, and Ricardo Rocha.
|
|
||||||
|
+ The [PRISM](http://rjida.meijo-u.ac.jp/prism/) logic-based
|
||||||
+ The [PRISM](http://rjida.meijo-u.ac.jp/prism/) logic-based
|
programming system for statistical modeling developed at the Sato
|
||||||
programming system for statistical modeling developed at the Sato
|
Research Laboratory, TITECH, Japan.
|
||||||
Research Laboratory, TITECH, Japan.
|
|
||||||
|
+ The ProbLog 1 system developed by the [ProbLog](https://dtai.cs.kuleuven.be/problog) team in the
|
||||||
+ The ProbLog 1 system developed by the [ProbLog](https://dtai.cs.kuleuven.be/problog) team in the
|
DTAI group of KULeuven.
|
||||||
DTAI group of KULeuven.
|
|
||||||
|
+ The [R](http://stoics.org.uk/~nicos/sware/packs/real/) interface package developed by Nicos Angelopoulos,
|
||||||
+ The [R](http://stoics.org.uk/~nicos/sware/packs/real/) interface package developed by Nicos Angelopoulos,
|
Vítor Santos Costa, João Azevedo, Jan Wielemaker, and Rui Camacho.
|
||||||
Vítor Santos Costa, João Azevedo, Jan Wielemaker, and Rui Camacho.
|
|
||||||
|
@ -392,7 +392,7 @@ determination(student/1,hasposition/2).</code></pre>
|
|||||||
<li><p><code>verbosity</code> (values: integer in [1,3], default value: 1): level of verbosity of the algorithms</p></li>
|
<li><p><code>verbosity</code> (values: integer in [1,3], default value: 1): level of verbosity of the algorithms</p></li>
|
||||||
<li><p><code>beamsize</code> (values: integer, default value: 20, valid for SLIPCASE and SLIPCOVER): size of the beam</p></li>
|
<li><p><code>beamsize</code> (values: integer, default value: 20, valid for SLIPCASE and SLIPCOVER): size of the beam</p></li>
|
||||||
<li><p><code>mcts_beamsize</code> (values: integer, default value: 3, valid for LEMUR): size of the MCTS beam</p></li>
|
<li><p><code>mcts_beamsize</code> (values: integer, default value: 3, valid for LEMUR): size of the MCTS beam</p></li>
|
||||||
<li><p><code>mcts_visits</code> (values: integer, default value: +inf, valid for LEMUR): maximum number of visits (Nicola controlla)</p></li>
|
<li><p><code>mcts_visits</code> (values: integer, default value: +inf, valid for LEMUR): maximum number of visits</p></li>
|
||||||
<li><p><code>megaex_bottom</code> (values: integer, default value: 1, valid for SLIPCOVER): number of mega-examples on which to build the bottom clauses</p></li>
|
<li><p><code>megaex_bottom</code> (values: integer, default value: 1, valid for SLIPCOVER): number of mega-examples on which to build the bottom clauses</p></li>
|
||||||
<li><p><code>initial_clauses_per_megaex</code> (values: integer, default value: 1, valid for SLIPCOVER): number of bottom clauses to build for each mega-example</p></li>
|
<li><p><code>initial_clauses_per_megaex</code> (values: integer, default value: 1, valid for SLIPCOVER): number of bottom clauses to build for each mega-example</p></li>
|
||||||
<li><p><code>d</code> (values: integer, default value: 10000, valid for SLIPCOVER): number of saturation steps when building the bottom clause</p></li>
|
<li><p><code>d</code> (values: integer, default value: 10000, valid for SLIPCOVER): number of saturation steps when building the bottom clause</p></li>
|
||||||
@ -426,7 +426,7 @@ determination(student/1,hasposition/2).</code></pre>
|
|||||||
<pre><code>?:- use_module(library('cplint/lemur')).</code></pre>
|
<pre><code>?:- use_module(library('cplint/lemur')).</code></pre>
|
||||||
<p>and call</p>
|
<p>and call</p>
|
||||||
<pre><code>?:- "mcts(stem,depth,c,iter,rules,covering)</code></pre>
|
<pre><code>?:- "mcts(stem,depth,c,iter,rules,covering)</code></pre>
|
||||||
<p>where <code>depth</code> (integer) is the maximum number of random specialization steps in the default policy, <code>C</code> (real) is the value of the MCTS <span class="math inline"><em>C</em></span> constant, <code>iter</code> (integer) is the number of UCT rounds, <code>rules</code> (integer) is the maximum number of clauses to be learned and <code>covering</code> (Boolean) dentoes whether the search is peformed in the space of clauses (true) or theories (false) (Nicola controlla).</p>
|
<p>where <code>depth</code> (integer) is the maximum number of random specialization steps in the default policy, <code>C</code> (real) is the value of the MCTS <span class="math inline"><em>C</em></span> constant, <code>iter</code> (integer) is the number of UCT rounds, <code>rules</code> (integer) is the maximum number of clauses to be learned and <code>covering</code> (Boolean) dentoes whether the search is peformed in the space of clauses (true) or theories (false).</p>
|
||||||
<h2 id="testing">Testing</h2>
|
<h2 id="testing">Testing</h2>
|
||||||
<p>To test the theories learned, load <code>test.pl</code> with</p>
|
<p>To test the theories learned, load <code>test.pl</code> with</p>
|
||||||
<pre><code>?:- use_module(library('cplint/test')).</code></pre>
|
<pre><code>?:- use_module(library('cplint/test')).</code></pre>
|
||||||
|
Binary file not shown.
@ -632,7 +632,7 @@ SLIPCOVER and LEMUR): maximum number of distinct variables in a clause
|
|||||||
\item \verb|beamsize| (values: integer, default value: 20, valid for SLIPCASE and SLIPCOVER): size of the beam
|
\item \verb|beamsize| (values: integer, default value: 20, valid for SLIPCASE and SLIPCOVER): size of the beam
|
||||||
\item \verb|mcts_beamsize| (values: integer, default value: 3, valid for LEMUR): size of the MCTS beam
|
\item \verb|mcts_beamsize| (values: integer, default value: 3, valid for LEMUR): size of the MCTS beam
|
||||||
|
|
||||||
\item \verb|mcts_visits| (values: integer, default value: +inf, valid for LEMUR): maximum number of visits (Nicola controlla)
|
\item \verb|mcts_visits| (values: integer, default value: +inf, valid for LEMUR): maximum number of visits
|
||||||
|
|
||||||
\item \verb|megaex_bottom| (values: integer, default value: 1, valid for SLIPCOVER): number of mega-examples on which to build the bottom clauses
|
\item \verb|megaex_bottom| (values: integer, default value: 1, valid for SLIPCOVER): number of mega-examples on which to build the bottom clauses
|
||||||
\item \verb|initial_clauses_per_megaex| (values: integer, default value: 1, valid for SLIPCOVER):
|
\item \verb|initial_clauses_per_megaex| (values: integer, default value: 1, valid for SLIPCOVER):
|
||||||
@ -701,7 +701,7 @@ where \verb|depth| (integer) is the maximum number
|
|||||||
of random specialization steps in the default policy, \verb|C| (real) is the value of the MCTS $C$ constant, \verb|iter| (integer) is the number of UCT rounds, \verb|rules| (integer) is
|
of random specialization steps in the default policy, \verb|C| (real) is the value of the MCTS $C$ constant, \verb|iter| (integer) is the number of UCT rounds, \verb|rules| (integer) is
|
||||||
the maximum number of clauses to be
|
the maximum number of clauses to be
|
||||||
learned and \verb|covering| (Boolean) dentoes whether the search is peformed in
|
learned and \verb|covering| (Boolean) dentoes whether the search is peformed in
|
||||||
the space of clauses (true) or theories (false) (Nicola controlla).
|
the space of clauses (true) or theories (false).
|
||||||
|
|
||||||
\subsection{Testing}
|
\subsection{Testing}
|
||||||
To test the theories learned, load \texttt{test.pl} with
|
To test the theories learned, load \texttt{test.pl} with
|
||||||
|
Reference in New Issue
Block a user