add: mathematical approach