object algebra framework