computational theory