Definition keyAssignmentsOverlap (x y : keyAssignment) : Prop :=
  let x1 := kaValueStart x in
  let x2 := kaValueEnd x in
  let y1 := kaValueStart y in
  let y2 := kaValueEnd y in
    ge x2 y1 /\ ge y2 x1.
