drop table pt; drop table ingredient; drop table recipe; drop table connection; drop table hut; drop table store; drop table guard; drop table confiscates; drop table recipe_ing; drop table delivery; drop table delivery_ing; drop sequence delivery_did_seq; create table pt ( id int primary key ); create table ingredient ( name varchar(20) primary key ); create table recipe ( name varchar(20) primary key ); create table connection ( p1 int references pt not null, p2 int references pt not null ); create table hut ( owner varchar(20) primary key, pid int references pt not null ); create table store ( name varchar(20) primary key, pid int references pt not null ); create table guard ( name varchar(20) primary key, pid int references pt not null ); create table confiscates ( guard varchar(20) references guard not null, ingredient varchar(20) references ingredient not null ); create table recipe_ing ( recipe varchar(20) references recipe not null, ingredient varchar(20) references ingredient not null ); create table delivery ( did serial primary key, sender varchar(20) references store not null, receiver varchar(20) references hut not null, path int[] ); create table delivery_ing ( did int references delivery, ingredient varchar(20) references ingredient );