Groups, Algorithms, Programming (GAP) é um sistema de software livre para computação em álgebra discreta. Ele permite a manipulação de grupos, anéis, corpos e outras estruturas matemáticas, além de fornecer uma variedade de algoritmos para aplicações em álgebra computacional. GAP também tem uma interface de programação que permite aos usuários escrever seus próprios programas e scripts usando a linguagem GAP. 