Перегрузка операторов и определение класса в R: используйте другое базовое поле / корпус

(Я использую слово "поле"в математическом смысле; базовые поля / корпуса, которыеR уже использует включают в себя действительные и комплексные числа.)

Я заинтересован в разрешении некоторых других базовых полей / корпусов (например,F₅, который является модульной арифметикой в базе 5). Для этого мне нужно

определить новый тип данныхперегрузить соответствующие операторы (+, *а может и больше)может быть, что-то еще? например, интегрировать с другими функциями?

Итак, как определить новый тип данных или операторы перегрузки вR?