Hello,
I have some abbrev's defined - my global abbrev table is:
(define-abbrev-table 'global-abbrev-table
  '(
    ("graphg" "G be a graph" nil 2)
    ("h1h2" "(H_1,H_2)" nil 2)
    ("iff" "if and only if" nil 3)
    ("isosub" "isomorphic to a subgraph" nil 1)
    ("simpleg" "G is a simple graph" nil 14)
    ("xycut" "(X,Y)-cutset" nil 5)
    ("xypath" "(X,Y)-path" nil 3)
    ("xypaths" "(X,Y)-paths" nil 5)
   ))

What appears to be happening is that when first loading this cutswet, nothing is wrong.  everything appears ot be working normally.  Eventually, it starts breaking, and only the first character of the abbrev is replace, such that:
 xypath -> (X,Y)-path _ypath
where _ represents point. 

Does anyone have any ideas why this is happening?