Changeset 806c18 in git for factory/ExtensionInfo.h
- Timestamp:
- Nov 15, 2010, 4:34:57 PM (13 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', '0604212ebb110535022efecad887940825b97c3f')
- Children:
- 7c3bca08c96331a56864c1d35b8c2e8ff2e0be89
- Parents:
- c840d97af622b4e4da8761738b540e21144f716b
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
factory/ExtensionInfo.h
rc840d9 r806c18 1 1 /*****************************************************************************\ 2 * Computer Algebra System SINGULAR 2 * Computer Algebra System SINGULAR 3 3 \*****************************************************************************/ 4 4 /** @file ExtensionInfo.h 5 * 5 * 6 6 * This file provides a class to store information about finite fields and 7 * extensions thereof. 8 * 7 * extensions thereof. 8 * 9 9 * 10 10 * @author Martin Lee … … 23 23 24 24 /** @class ExtensionInfo ExtensionInfo.h "factory/ExtensionInfo.h" 25 * ExtensionInfo contains information about extension. 26 * If @a m_extension is true we are in an extension of some initial field. 27 * If the initial field is \f$ F_p \f$ and we pass to \f$ F_p (\alpha) \f$ 28 * then @a m_alpha is an algebraic variable, @a m_beta= Variable(1), 25 * ExtensionInfo contains information about extension. 26 * If @a m_extension is true we are in an extension of some initial field. 27 * If the initial field is \f$ F_p \f$ and we pass to \f$ F_p (\alpha) \f$ 28 * then @a m_alpha is an algebraic variable, @a m_beta= Variable(1), 29 29 * @a m_gamma= @a m_delta= 1, @a m_GFDegree= 0, @a m_GFName= 'Z'. If we pass 30 * to some GF (p^k) then @a m_alpha= Variable (1), @a m_beta= Variable(1), 31 * @a m_gamma= @a m_delta= 1, @a m_GFDegree= 1, @a m_GFName= 'Z'. 32 * @n If the initial field is \f$ F_p (\epsilon) \f$, then @a m_beta= 33 * \f$ \epsilon \f$, @a m_alpha an algebraic variable defining an extension of 34 * \f$ F_p (\epsilon) \f$, @a m_gamma is a primitive element of 35 * \f$ F_p (\alpha) \f$, @a m_delta is a primitive element of 36 * \f$ F_p (\beta) \f$, @a m_GFDegree= 0, @a m_GFName= 'Z'. 37 * @n If the initial field is GF(p^k), then @a m_alpha= Variable (1), 38 * @a m_beta= Variable (1), @a m_gamma= 1, @a m_delta= 1, @a m_GFDegree()= k, 39 * @a m_GFName= gf_name of the initial field. 40 * @n If @a m_extension is false and the current field is \f$ F_p \f$ then 41 * @a m_alpha= Variable (1), @a m_beta= Variable (1), @a m_gamma= 1, 42 * @a m_delta= 1, @a m_GFDegree= 1, @a m_GFName= 'Z'. 43 * @n If the current field is \f$ F_p (\alpha) \f$ then 44 * @a m_alpha is some algebraic variable, @a m_beta= Variable (1), 45 * @a m_gamma= 1, @a m_delta= 1, @a m_GFDegree= 0, @a m_GFName= 'Z'. 46 * @n If the current field is GF then @a m_alpha= Variable (1), 47 * @a m_beta= Variable (1), @a m_gamma= 1, @a m_delta= 1, 30 * to some GF (p^k) then @a m_alpha= Variable (1), @a m_beta= Variable(1), 31 * @a m_gamma= @a m_delta= 1, @a m_GFDegree= 1, @a m_GFName= 'Z'. 32 * @n If the initial field is \f$ F_p (\epsilon) \f$, then @a m_beta= 33 * \f$ \epsilon \f$, @a m_alpha an algebraic variable defining an extension of 34 * \f$ F_p (\epsilon) \f$, @a m_gamma is a primitive element of 35 * \f$ F_p (\alpha) \f$, @a m_delta is a primitive element of 36 * \f$ F_p (\beta) \f$, @a m_GFDegree= 0, @a m_GFName= 'Z'. 37 * @n If the initial field is GF(p^k), then @a m_alpha= Variable (1), 38 * @a m_beta= Variable (1), @a m_gamma= 1, @a m_delta= 1, @a m_GFDegree()= k, 39 * @a m_GFName= gf_name of the initial field. 40 * @n If @a m_extension is false and the current field is \f$ F_p \f$ then 41 * @a m_alpha= Variable (1), @a m_beta= Variable (1), @a m_gamma= 1, 42 * @a m_delta= 1, @a m_GFDegree= 1, @a m_GFName= 'Z'. 43 * @n If the current field is \f$ F_p (\alpha) \f$ then 44 * @a m_alpha is some algebraic variable, @a m_beta= Variable (1), 45 * @a m_gamma= 1, @a m_delta= 1, @a m_GFDegree= 0, @a m_GFName= 'Z'. 46 * @n If the current field is GF then @a m_alpha= Variable (1), 47 * @a m_beta= Variable (1), @a m_gamma= 1, @a m_delta= 1, 48 48 * @a m_GFDegree= getGFDegree(), @a m_GFName= gf_name. 49 49 * 50 * @sa facFqBivar.h, facFqFactorize.h 50 * @sa facFqBivar.h, facFqFactorize.h 51 51 */ 52 52 class ExtensionInfo 53 53 { 54 54 private: 55 /// an algebraic variable or Variable (1) 55 /// an algebraic variable or Variable (1) 56 56 Variable m_alpha; 57 57 /// an algebraic variable or Variable (1) 58 Variable m_beta; 58 Variable m_beta; 59 59 /// a primitive element of \f$ F_p (\alpha) \f$ or 1 60 60 CanonicalForm m_gamma; … … 69 69 public: 70 70 /// \f$ F_p \f$ as initial field, if @a extension is true we are in some GF 71 ExtensionInfo (const bool extension ///< [in] some bool 71 ExtensionInfo (const bool extension ///< [in] some bool 72 72 ); 73 /// Construct an @a ExtensionInfo 74 ExtensionInfo (const Variable& alpha, ///< [in] some algebraic variable 73 /// Construct an @a ExtensionInfo 74 ExtensionInfo (const Variable& alpha, ///< [in] some algebraic variable 75 75 const Variable& beta, ///< [in] some algebraic variable 76 76 const CanonicalForm& gamma, ///< [in] some primitive element … … 85 85 /// \f$ F_p (\beta) \f$ as initial field and switch to an extension given by 86 86 /// @a alpha, needs primitive elements @a gamma and @a delta for maps 87 /// between \f$ F_p (\alpha) \subset F_p (\beta) \f$ 87 /// between \f$ F_p (\alpha) \subset F_p (\beta) \f$ 88 88 ExtensionInfo (const Variable& alpha, ///< [in] some algebraic variable 89 89 const Variable& beta, ///< [in] some algebraic variable … … 94 94 ); 95 95 /// \f$ F_p (\alpha) \f$ as initial field, if @a extension is false. 96 /// Else initial field is \f$ F_p \f$ 96 /// Else initial field is \f$ F_p \f$ 97 97 ExtensionInfo (const Variable& alpha, ///< [in] some algebraic variable 98 98 const bool extension ///< [in] some bool 99 ); 99 ); 100 100 101 ExtensionInfo (const Variable& alpha ///< [in] some algebraic variable 101 //ExtensionInfo (const Variable& alpha ///< [in] some algebraic variable 102 // ); 103 104 /// GF as initial field 105 ExtensionInfo (const int nGFDegree, ///< [in] GF degree of initial field 106 const char cGFName, ///< [in] name of GF variable 107 const bool extension ///< [in] some bool 102 108 ); 103 104 /// GF as initial field105 ExtensionInfo (const int nGFDegree, ///< [in] GF degree of initial field106 const char cGFName, ///< [in] name of GF variable107 const bool extension ///< [in] some bool108 );109 109 110 110 /// getter
Note: See TracChangeset
for help on using the changeset viewer.