boldface below represents user input.
Note: The semicolons below in the interactive session are bold.

four06% cat food.pl
suppliers(sunshine_produce, addr_16_river_st).
suppliers(purity_foodstuffs, addr_180_industrial_rd).
suppliers(tasti_supply_co, addr_17_river_st).
items(granola).
items(unbleached_flour).
items(whey).
items(sunflower_seeds).
items(lettuce).
items(curds).
prices(129, granola, sunshine_produce).
prices(89, lettuce, sunshine_produce).
prices(109, sunflower_seeds, sunshine_produce).
prices(70, whey, purity_foodstuffs).
prices(80, curds, purity_foodstuffs).
prices(125, granola, purity_foodstuffs).
prices(65, unbleached_flour, purity_foodstuffs).
prices(79, lettuce, tasti_supply_co).
prices(79, whey, tasti_supply_co).
prices(119, sunflower_seeds, tasti_supply_co).
members(brooks, addr_7_apple_rd, 1050).
members(field, addr_43_cherry_la, 0).
members(robin, addr_12_heather_st, -12345).
members(hart, addr_65_lark_rd, -4300).
orders(1, 5, granola, brooks).
orders(2, 10, unbleached_flour, brooks).
orders(3, 3, granola, robin).
orders(4, 5, whey, hart).
orders(5, 2, sunflower_seeds, robin).
orders(6, 8, lettuce, robin).

supplier_of_granola(Sname, Saddr, Price) :- suppliers(Sname, Saddr),
      prices(Price, granola, Sname).

suppliers_of_curds_or_whey(Sname, Saddr) :-
      suppliers(Sname, Saddr), prices(_,curds,Sname);
      suppliers(Sname, Saddr), prices(_,whey, Sname).

suppliers_of_curds_and_whey(Sname, Saddr) :-
      suppliers(Sname, Saddr),
      prices(_,curds,Sname), prices(_,whey, Sname).

items_over_100(Iname, Price, Sname, Saddr) :- prices(Price, Iname, Sname),
     suppliers(Sname, Saddr), Price > 100.

orders_of_granola(Mname, Maddr) :- orders(_, _, granola, Mname),
     members(Mname, Maddr, _).

four06% pl
Welcome to SWI-Prolog (Version 3.2.9)
Copyright (c) 1993-1999 University of Amsterdam.  All rights reserved.

For help, use ?- help(Topic). or ?- apropos(Word).

?- consult(food).
food compiled, 0.02 sec, 4,820 bytes.

Yes
?- supplier_of_granola(Sname, Saddr, Price).

Sname = sunshine_produce
Saddr = addr_16_river_st
Price = 129 ;

Sname = purity_foodstuffs
Saddr = addr_180_industrial_rd
Price = 125 ;

No
?- suppliers_of_curds_or_whey(Sname, Saddr).

Sname = purity_foodstuffs
Saddr = addr_180_industrial_rd ;

Sname = purity_foodstuffs
Saddr = addr_180_industrial_rd ;

Sname = tasti_supply_co
Saddr = addr_17_river_st ;

No
?- suppliers_of_curds_or_whey(Sname, Saddr).

Sname = purity_foodstuffs
Saddr = addr_180_industrial_rd ;

Sname = purity_foodstuffs
Saddr = addr_180_industrial_rd ;

Sname = tasti_supply_co
Saddr = addr_17_river_st ;

No
?- suppliers_of_curds_and_whey(Sname, Saddr).

Sname = purity_foodstuffs
Saddr = addr_180_industrial_rd ;

No
?- items_over_100(Iname, Price, Sname, Saddr).

Iname = granola
Price = 129
Sname = sunshine_produce
Saddr = addr_16_river_st ;

Iname = sunflower_seeds
Price = 109
Sname = sunshine_produce
Saddr = addr_16_river_st ;

Iname = granola
Price = 125
Sname = purity_foodstuffs
Saddr = addr_180_industrial_rd ;

Iname = sunflower_seeds
Price = 119
Sname = tasti_supply_co
Saddr = addr_17_river_st ;

No
?- orders_of_granola(Mname, Maddr).

Mname = brooks
Maddr = addr_7_apple_rd ;

Mname = robin
Maddr = addr_12_heather_st ;

No
?- halt.
four06%