algebra-3.1: Constructive abstract algebra