Unknown procedure | Prolog
Пролог жалуется, что не может найти openread/2:

file = Myfile
database-main
town(string, string)
database -russia
town1(string, string)
database -france
town2(string, string)
database -ukraine
town3(string, string)
database -china
town4(string, string)
database -canada
town5(string, string)
database -usa
town6(string, string)
database -vietnam
town7(string, string)
database -england
town8(string, string)
database -german
town9(string, string)
database -italy
town10(string, string)
database -kazakhstan
town11(string, string)
write_all_facts:-write("Russia"),nl,town1(X,Y),write(X),nl,fail;
nl,write("France"),nl,town2(X,Y),write(X),nl,fail;
nl,write("Ukraine"),nl,town3(X,Y),write(X),nl,fail;
nl,write("China"),nl,town4(X,Y),write(X),nl,fail;
nl,write("Canada"),nl,town5(X,Y),write(X),nl,fail;
nl,write("Usa"),nl,town6(X,Y),write(X),nl,fail;
nl,write("Vietnam"),nl,town7(X,Y),write(X),nl,fail;
nl,write("England"),nl,town8(X,Y),write(X),nl,fail;
nl,write("German"),nl,town9(X,Y),write(X),nl,fail;
nl,write("Italy"),nl,town10(X,Y),write(X),nl,fail;
nl,write("Kazakhstan"),nl,town11(X,Y),write(X),nl,fail.
section:-
town(Name, Contr),
Contr = russia,
assertz(town1(Name, Contr), russia),
save("C:\\prolog\\russia.txt", russia),
retract(town(Name, Contr), main), fail;
town(Name, Contr),
Contr = france,
assertz(town2(Name, Contr), france),
save("C:\\prolog\\france.txt", france),
retract(town(Name, Contr), main), fail;
town(Name, Contr),
Contr = ukraine,
assertz(town3(Name, Contr), ukraine),
save("C:\\prolog\\ukraine.txt", ukraine),
retract(town(Name, Contr), main), fail;
town(Name, Contr),
Contr = china,
assertz(town4(Name, Contr), china),
save("C:\\prolog\\china.txt", china),
retract(town(Name, Contr), main), fail;
town(Name, Contr),
Contr = canada,
assertz(town5(Name, Contr), canada),
save("C:\\prolog\\canada.txt", canada),
retract(town(Name, Contr), main), fail;
town(Name, Country),
Country = usa,
assertz(town6(Name, Country), usa),
save("C:\\prolog\\usa.txt", usa),
retract(town(Name, Country), main), fail;
town(Name, Contr),
Contr = vietnam,
assertz(town7(Name, Contr), vietnam),
save("C:\\prolog\\vietnam.txt", vietnam),
retract(town(Name, Contr), main), fail;
town(Name, Contr),
Contr = england,
assertz(town8(Name, Contr), england),
save("C:\\prolog\\england.txt", england),
retract(town(Name, Contr), main), fail;
town(Name, Contr),
Contr = german,
assertz(town9(Name, Contr), german),
save("C:\\prolog\\german.txt", german),
retract(town(Name, Cont), main), fail;
town(Name, Contr),
Contr = italy,
assertz(town10(Name, Contr), italy),
save("C:\\prolog\\italy.txt", italy),
retract(town(Name, Contr), main), fail;
town(Name, Contr),
Contr = kazakhstan,
assertz(town11(Name, Contr), kazakhstan),
save("C:\\prolog\\kazakhstan.txt", kazakhstan),
retract(town(Name, Contr), main), fail.
going:- openread(Myfile, "C:\\asm_labs\\facts.pl"),
consult("C:\\asm_labs\\facts.pl"), readdevice(Myfile),
section, write_all_facts.
Буду очень благодарен за помощь!