An algebraic approach to modeling