abstract sig City {roads: set City}
one sig A,B,C,D,E,F,G,H,I,J
extends City {}
fact fixed {
let onedirection =
A->D + D->I + A->B + B->C + A->C +
B->E + C->D + C->E + E->F + E->G +
D->H + D->F + F->G + F->H + H->I +
G->J + H->J + I->J |
roads = onedirection + ~onedirection
}
run {} for 10 City