learner definition rewrites