have(ali,bac1). have(reza,bac2). throat_color(ali,red). throat_color(bc,black). stain(bac1,grampos). stain(bac2,gramneg). stain(bac3,grampos). morphology(bac1,coccus). morphology(bac2,sarcina). morphology(bac3,coccus). grow(bac1,chain). grow(bac2,not_chain). grow(bac3,chain). strep_throat(X):-infection(X), streptococcus(Y), have(X,Y). infection(X):-throat_color(X,red). streptococcus(X):-stain(X,grampos), morphology(X,coccus), grow(X,chain).