/* isol.prb Definition of Isolation space and examples for Winston Program Alan Bundy 18.2.81 */ /* Predicate Trees */ tree(occurtree,2,occur_rel(freeof,contains(singleocc,multocc))). default(occurtree,freeof). tree(simtree,2,sim_rel(different(unrelated,inverse),ident)). default(simtree,unrelated). /* Examples and near Misses */ specimen(isol1, [singleocc(x,expr_at([1,2],before)), freeof(x,expr_at([1,1],before)), freeof(x,expr_at([2],before)), ident(expr_at([1,1],before),expr_at([2,1],after)), ident(expr_at([1,2],before),expr_at([1],after)), ident(expr_at([2],before),expr_at([2,2],after)), inverse(sym_at([1],before),sym([2],after)) ] ). specimen(isol2, [singleocc(x,expr_at([1,2],before)), contains(x,expr_at([1,1],before)), freeof(x,expr_at([2],before)), ident(expr_at([1,1],before),expr_at([2,1],after)), ident(expr_at([1,2],before),expr_at([1],after)), ident(expr_at([2],before),expr_at([2,2],after)), inverse(sym_at([1],before),sym([2],after)) ] ). specimen(isol3, [singleocc(x,expr_at([1,2],before)), freeof(x,expr_at([1,1],before)), contains(x,expr_at([2],before)), ident(expr_at([1,1],before),expr_at([2,1],after)), ident(expr_at([1,2],before),expr_at([1],after)), ident(expr_at([2],before),expr_at([2,2],after)), inverse(sym_at([1],before),sym([2],after)) ] ). specimen(isol4, [singleocc(x,expr_at([1,2],before)), freeof(x,expr_at([1,1],before)), freeof(x,expr_at([2],before)), different(expr_at([1,1],before),expr_at([2,1],after)), ident(expr_at([1,2],before),expr_at([1],after)), ident(expr_at([2],before),expr_at([2,2],after)), inverse(sym_at([1],before),sym([2],after)) ] ). specimen(isol5, [singleocc(x,expr_at([1,2],before)), freeof(x,expr_at([1,1],before)), freeof(x,expr_at([2],before)), ident(expr_at([1,1],before),expr_at([2,1],after)), different(expr_at([1,2],before),expr_at([1],after)), ident(expr_at([2],before),expr_at([2,2],after)), inverse(sym_at([1],before),sym([2],after)) ] ). specimen(isol6, [singleocc(x,expr_at([1,2],before)), freeof(x,expr_at([1,1],before)), freeof(x,expr_at([2],before)), ident(expr_at([1,1],before),expr_at([2,1],after)), ident(expr_at([1,2],before),expr_at([1],after)), different(expr_at([2],before),expr_at([2,2],after)), inverse(sym_at([1],before),sym([2],after)) ] ). specimen(isol7, [singleocc(x,expr_at([1,2],before)), freeof(x,expr_at([1,1],before)), freeof(x,expr_at([2],before)), ident(expr_at([1,1],before),expr_at([2,1],after)), ident(expr_at([1,2],before),expr_at([1],after)), ident(expr_at([2],before),expr_at([2,2],after)), unrelated(sym_at([1],before),sym([2],after)) ] ). specimen(isol8, [multocc(x,expr_at([1,2],before)), freeof(x,expr_at([1,1],before)), freeof(x,expr_at([2],before)), ident(expr_at([1,1],before),expr_at([2,1],after)), ident(expr_at([1,2],before),expr_at([1],after)), ident(expr_at([2],before),expr_at([2,2],after)), inverse(sym_at([1],before),sym([2],after)) ] ).