{-| module : Data.Number.Flint.Calcium.Ca.Field copyright : (c) 2023 Hartmut Monien license : GNU GPL, version 2 or above (see LICENSE) maintainer : hmonien@uni-bonn.de A @CaFieldt@ represents the parent field \(K = \mathbb{Q}(a_1,\ldots,a_n)\) of a @Ca@ element. A @CaField@ contains a list of pointers to @CaExt@ objects as well as a reduction ideal. The user does not normally need to create @CaField@ objects manually: a @CaCtx@ context object manages a cache of fields automatically. Internally, three types of field representation are used: * The trivial field \(\mathbb{Q}\). * An Antic number field \(\mathbb{Q}(a)\) where \(a\) is defined by a @QQbar@. * A generic field \(\mathbb{Q}(a_1,\ldots,a_n)\) where \(n \ge 1\), and \(a_1\) is not defined by a @QQbar@ if \(n = 1\). The field type mainly affects the internal storage of the field elements; the distinction is mostly transparent to the external interface. -} module Data.Number.Flint.Calcium.Ca.Field ( module Data.Number.Flint.Calcium.Ca.Field.FFI ) where import Data.Number.Flint.Calcium.Ca.Field.FFI