                                    (morph/exception-generator lexicon)))]
         (apply merge-with concat
                [exceptions lexicon]))))
-      
-   ;; Mark lexemes with no :cat with their own :cat to avoid matching any rules after this.
-   (default {:gender-pronoun-agreement false
-             :synsem {:cat :lexeme-with-an-unspecified-category}})
-      
-   ;; Agreement between subject pronouns and verbs
-   (default {:gender-pronoun-agreement true
-             :synsem {:cat :noun
-                      :pronoun true
-                      :agr {:gender gender}
-                      :sem {:gender gender}
-                      :subcat '()}})
+
+   ;; Prevent irregular infinitives ({:present :regular false})
+   ;; from matching phrase structure rules intended for non-infinitives.
+   (default {:synsem {:cat :verb}
+             :français {:exception false
+                        :present {:regular false
+                                  :conjugated false}}
+             :d-verb-irreg true})
       
    ;; Verbs are *not* aux unless explicitly stated as such..
    (default {:synsem {:cat :verb
-                      :aux false}})
+                      :aux false}
+             :d-verb-aux false})
    
    ;; ..but for verbs that *are* aux, then:
    (default {:synsem {:sem verb-aux-sem

   (map-function-on-map-vals
    (fn [lexical-string lexical-val]
      (phonize lexical-val lexical-string)))
      
   ((fn [lexicon]
      (let [exceptions (apply merge-with concat
                              (map (fn [x]

                                   :sem verb-aux-sem
                                   :cat :verb
                                   :aux false
                                   :subcat {:1 verb-aux-subject}}}}
             :d-verb-aux true})
   
   ;; All pronouns are nouns.
   (default {:synsem {:cat :noun
                      :pronoun true}
             :d-noun true})
     
   ;; Make an intransitive version of every verb which has a path [:sem :obj].
   intransitivize
   
