module airportOpsClassroom sig Location { adj: some Location } abstract sig Fixed { at: set Location } fact PhysicalConstraints { ~adj in adj all f: Fixed | some f.at all s: State, l: Location | lone l.(~(s.loc)) & Plane //(2) all f: Fixed | all disj l, l': f.at | l in l'.(^adj) } sig Runway, Gate, Taxiway extends Fixed {} abstract sig Mobile {} sig Plane, Vehicle extends Mobile {} sig State { loc: Mobile -> lone Location }