typealias A = IntegerQuotientRing<_5> // 5 は素数 let a = A(4) let b = A(3) print(a / b) // 割り算ができる typealias A = IntegerQuotientRing<_4> // 4 は素数でない! let a = A(4) let b = A(3) print(a / b) // 割り算ができないのでちゃんとエラー
(edited)public struct _4 : _Int { public static let intValue = 4 } public struct _5 : _Prime { public static let intValue = 5 }
のように直接定義していますw (edited)