anchor.diff:    let rDatacenterSmall2 (pb : Route.PredicateBuilder) (reb : Regex.REBuilder) = 
       let pref1 = 
         reb.Inter [ reb.Through [ "M" ]
  -                  reb.End [ "A" ] ]
  +                  reb.End [ "A" ]
  +                  reb.Start [ "B"; "C"; "D" ] ]
       [ reb.Build Route.top 1 pref1 ]
     
     let rDatacenterSmall3 (pb : Route.PredicateBuilder) (reb : Regex.REBuilder) = 
  
positive.code:     RConfigs : Map<string, RouterConfig> }
  
  type CounterExample = 
    | NoPathForRouters of Set<string>
    | InconsistentPrefs of CgState * CgState
    | UncontrollableEnter of string
    | UncontrollablePeerPreference of string
  
negative.code:   |> Seq.choose insideLoc
    |> Set.ofSeq
  
  let getLocsWithNoPath idx cg (reb : Regex.REBuilder) dfas = 
    let startingLocs = Array.fold (fun acc dfa -> Set.union (reb.StartingLocs dfa) acc) Set.empty dfas
    let originators = insideOriginators cg
    
  