title: GNU Prolog simple program doesn't work as expected
body: <p><strong>EDIT : I've just compiled <code>gprolog</code> from sources.</strong></p>
  <p><strong>It works fine. The version 1.4.5 in the Debian repo is bugged.</strong></p>
  <p>It's my first program in GNU Prolog (gprolog) without any success. :-(</p>
  <p>I found these exercises in a Prolog tutorial.</p>
  <pre><code>GNU Prolog 1.4.5 (64 bits)
  Compiled Feb  5 2017, 10:30:08 with gcc
  By Daniel Diaz
  Copyright (C) 1999-2016 Daniel Diaz
  compiling /home/aubin/Dev/Prolog/overview/parents.prolog for byte code...
  /home/aubin/Dev/Prolog/overview/parents.prolog compiled, 39 lines read - 2555 bytes written, 3 ms
  | ?- grandPere( GrandPere, eve ).
  uncaught exception: error(existence_error(procedure,pere/0),grandPere/0)
  | ?- parent( PereOuMere, eve ).
  uncaught exception: error(existence_error(procedure,pere/0),parent/0)
  | ?- parents( Pere, Mere, eve).
  
  no
  | ?- parents( aubin, muriel, X ).
  
  no
  | ?- frere_ou_soeur( X, aubin ).
  
  no
  | ?- listing.
  
  % file: /home/aubin/Dev/Prolog/overview/parents.prolog
  
  pere(joseph, michel).
  pere(michel, aubin).
  pere(michel, brigitte).
  pere(michel, sylvie).
  pere(alain, muriel).
  pere(aubin, eve).
  
  mere(colette, muriel).
  mere(muriel, eve).
  
  grandPere(A, B) :-
      pere(A, C),
      pere(C, B).
  
  parent(A, B) :-
      pere(A, B).
  parent(A, B) :-
      mere(A, B).
  
  frere_ou_soeur(A, B) :-
      A \= B,
      parent(C, A),
      parent(C, B).
  
  parents(A, B, C) :-
      A \= B,
      A \= C,
      B \= C,
      pere(A, C),
      mere(B, C).
  
  yes
  </code></pre>
  <p>The expected answers are :</p>
  <pre><code>grandPere( GrandPere, eve ). ==&gt; GrandPere = michel
  parent( PereOuMere, eve ).   ==&gt; PereOuMere = aubin, PereOuMere = muriel
  parents( Pere, Mere, eve).   ==&gt; Pere = aubin, Mere = muriel
  parents( aubin, muriel, X ). ==&gt; Enfant = eve
  frere_ou_soeur( X, aubin ).  ==&gt; X = brigitte, X = sylvie
  </code></pre>
  <p>First line of the source is:</p>
  <pre><code>#!/usr/bin/gprolog --consult-file
  </code></pre>
  <p>And the invocation is:</p>
  <pre><code>$ gprolog --consult-file parents.prolog 
  GNU Prolog 1.4.5 (64 bits)
  Compiled Feb  5 2017, 10:30:08 with gcc
  By Daniel Diaz
  Copyright (C) 1999-2016 Daniel Diaz
  compiling /home/aubin/Dev/Prolog/overview/parents.prolog for byte code...
  /home/aubin/Dev/Prolog/overview/parents.prolog compiled, 39 lines read - 2555 bytes written, 3 ms
  | ?- grandPere( GrandPere, eve ).
  uncaught exception: error(existence_error(procedure,pere/0),grandPere/0)
  | ?- 
  </code></pre>