maszynaWnioskujaca
Class MaszynaWnioskujaca

java.lang.Object
  extended by maszynaWnioskujaca.MaszynaWnioskujaca

public class MaszynaWnioskujaca
extends java.lang.Object

MaszynaWnioskująca, udostępnia metody wnioskowania wprzód oraz w tył.

Author:
Jarek Dziedzic, Andrzej Bieniek

Field Summary
private  java.util.ArrayList fakty
           
private  java.util.ArrayList noweFakty
           
private  java.util.ArrayList reguly
           
 
Constructor Summary
MaszynaWnioskujaca()
          Konstruktor.
 
Method Summary
 void dodajFakt(java.lang.String p_fakt)
          Dodaje nowy fakt do bazy faktów w MaszynieWnioskującej.
 void dodajRegule(Regula p_regula)
          Dodaje nową regułę do bazy reguł w MaszynieWnioskującej
 java.util.ArrayList getFakty()
           
 java.util.ArrayList getNoweFakty()
           
 java.util.ArrayList getReguly()
           
private  boolean isFakt(java.lang.String p_fakt)
          sprawdza czy mamy w bazie wiedzy p_fakt
 void reset()
          Metoda przypisuje wszystkie fakty wywnioskowane przez wnioskujWPrzod() i wnioskujWTyl(String) do bazy wiedzy.
 void setFakty(java.util.ArrayList p_fakty)
          Pozwala wymienić tablicę znanych faktów na nową
 void setNoweFakty(java.util.ArrayList p_noweFakty)
          Pozwala wymienić nowo udowodnione fakty na inne
 void setReguly(java.util.ArrayList p_reguly)
          Pozwala wymienić tablicę reguł dostępnych w klasie na nową
private  boolean udowodnijRegule(Regula reg)
          Funkca stara sie udowodnic wszystkie przeslanki z danej reguly.
 void wnioskujWPrzod()
          Wnioskowanie w przód - po znalezieniu nowego faktu, jest on automatycznie dodawany do bazy wiedzy poprzed wywolanie metody reset().
 boolean wnioskujWstecz(java.lang.String p_fakt)
          Funkcja stara sie dowiesc zadany fakt wykorzystujac mechanizm dowodzenia wstecz.
 void wypiszFakty()
          Wypisuje znane fakty na standardowe wyjście.
 void wypiszReguly()
          Wypisuje znane reguły na standardowe wyjście.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

reguly

private java.util.ArrayList reguly

fakty

private java.util.ArrayList fakty

noweFakty

private java.util.ArrayList noweFakty
Constructor Detail

MaszynaWnioskujaca

MaszynaWnioskujaca()
Konstruktor. Służy do zainicjalizowania prywantnych tablic faktów.

Method Detail

getReguly

public java.util.ArrayList getReguly()
Returns:
Zwraca tablicę obiektów klasy reguła.

setReguly

public void setReguly(java.util.ArrayList p_reguly)
Pozwala wymienić tablicę reguł dostępnych w klasie na nową

Parameters:
p_reguly - nowa tablica reguł (ArrayList)
See Also:
Regula

getFakty

public java.util.ArrayList getFakty()
Returns:
Zwraca tablicę Stringów, które są faktami

setFakty

public void setFakty(java.util.ArrayList p_fakty)
Pozwala wymienić tablicę znanych faktów na nową

Parameters:
p_fakty - nowa tablica faktów

getNoweFakty

public java.util.ArrayList getNoweFakty()
Returns:
Zwraca nowo udowodnione fakty w wyniku wnioskowania

setNoweFakty

public void setNoweFakty(java.util.ArrayList p_noweFakty)
Pozwala wymienić nowo udowodnione fakty na inne

Parameters:
p_noweFakty -

dodajRegule

public void dodajRegule(Regula p_regula)
Dodaje nową regułę do bazy reguł w MaszynieWnioskującej

Parameters:
p_regula - obiekt klasy reguła, który zostanie dodany do bazy wiedzy
See Also:
Regula

dodajFakt

public void dodajFakt(java.lang.String p_fakt)
Dodaje nowy fakt do bazy faktów w MaszynieWnioskującej. Fakt jest stringiem

Parameters:
p_fakt - nowy fakt, obiekt klasy String.

reset

public void reset()
Metoda przypisuje wszystkie fakty wywnioskowane przez wnioskujWPrzod() i wnioskujWTyl(String) do bazy wiedzy.


wnioskujWPrzod

public void wnioskujWPrzod()
Wnioskowanie w przód - po znalezieniu nowego faktu, jest on automatycznie dodawany do bazy wiedzy poprzed wywolanie metody reset().

See Also:
reset(), Regula

wypiszFakty

public void wypiszFakty()
Wypisuje znane fakty na standardowe wyjście.


wypiszReguly

public void wypiszReguly()
Wypisuje znane reguły na standardowe wyjście.


isFakt

private boolean isFakt(java.lang.String p_fakt)
sprawdza czy mamy w bazie wiedzy p_fakt

Parameters:
p_fakt -
Returns:
true gdy jest, false gdy nie ma faktu w bazie wiedzy.

udowodnijRegule

private boolean udowodnijRegule(Regula reg)
Funkca stara sie udowodnic wszystkie przeslanki z danej reguly.

Parameters:
reg - Regula ktorej przeslanki chcemy udowodnic.
Returns:
true - Sukces!, udalo sie udowodnic wszystkie przeslanki

false - Porazka!, nie udalo sie urowodnic wszystkich przeslanek


wnioskujWstecz

public boolean wnioskujWstecz(java.lang.String p_fakt)
Funkcja stara sie dowiesc zadany fakt wykorzystujac mechanizm dowodzenia wstecz.

Parameters:
fakt - Fakt do udowodnienia
Returns:
true - Sukces!, fakt zostal udowodniony

false - Porazka!, na podstawie posiadanej bazy wiedzy nie mozemy udowodnic danego faktu