Bertrand (named after Bertrand Russell) is a computer programming language for creating constraint programming systems. The language was created by Wm Leler in the mid-1980s as part of his doctoral research. Bertrand has a declarative programming syntax and differentiates itself from other programming languages by use of a technique called augmented term rewriting.