renamed type name fraction -> rational