Una gramática formal es un modelo matemático (más exactamente una estructura algebraica) compuesto por una serie de categorías sintácticas que se combinan entre sí por medio de unas reglas sintácticas que definen cómo se crea una categoría sintáctica por medio de otras o símbolos de la gramática.