Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  fampred.g   Sprache: unbekannt

 
Spracherkennung für: .g vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

#############################################################################
##
##  This file is part of GAP, a system for computational discrete algebra.
##  This file's authors include Etaoin Shrdlu.
##
##  Copyright of GAP belongs to its developers, whose names are too numerous
##  to list here. Please refer to the COPYRIGHT file for details.
##
##  SPDX-License-Identifier: GPL-2.0-or-later
##
##  This file defines all family predicates
##

BIND_GLOBAL( "IsFamFamX", function( F1, F2, F3 )
    return IsIdenticalObj( F1, F2 );
end );

BIND_GLOBAL( "IsFamXFam", function( F1, F2, F3 )
    return IsIdenticalObj( F1, F3 );
end );

BIND_GLOBAL( "IsFamFamXY", function( F1, F2, F3, F4 )
    return IsIdenticalObj( F1, F2 );
end );

BIND_GLOBAL( "IsFamXYFamZ", function( F1, F2, F3, F4, F5 )
    return IsIdenticalObj( F1, F4 );
end );

BIND_GLOBAL( "IsFamXFamY", function( F1, F2, F3, F4 )
    return IsIdenticalObj( F1, F3 );
end );

BIND_GLOBAL( "IsFamFamFam", function( F1, F2, F3 )
    return IsIdenticalObj( F1, F2 )
       and IsIdenticalObj( F2, F3 );
end );

BIND_GLOBAL( "IsFamFamFamX", function( F1, F2, F3, F4 )
    return IsIdenticalObj( F1, F2 )
       and IsIdenticalObj( F1, F3 );
end );


#############################################################################
##
#O  IsElmsColls(<F1>,<F2>) test if a family is the elements family of another
##
BIND_GLOBAL( "IsElmsColls", function ( F1, F2 )
    return HasElementsFamily( F2 )
       and IsIdenticalObj( F1, ElementsFamily(F2) );
end );

BIND_GLOBAL( "IsNotElmsColls", function ( F1, F2 )
    return not HasElementsFamily( F2 )
       or IsNotIdenticalObj( F1, ElementsFamily(F2) );
end );

BIND_GLOBAL( "IsElmsCollColls", function ( F1, F2 )
    return HasElementsFamily( F2 )
       and HasElementsFamily( ElementsFamily( F2 ) )
       and IsIdenticalObj( F1, ElementsFamily( ElementsFamily( F2 ) ) );
end );

BIND_GLOBAL( "IsElmsCollsX", function( F1, F2, F3 )
    return HasElementsFamily( F2 )
       and IsIdenticalObj( F1, ElementsFamily( F2 ) );
end );

BIND_GLOBAL( "IsElmsCollCollsX", function ( F1, F2, F3 )
    return HasElementsFamily( F2 )
       and HasElementsFamily( ElementsFamily( F2 ) )
       and IsIdenticalObj( F1, ElementsFamily( ElementsFamily( F2 ) ) );
end );


#############################################################################
##
#O  IsCollsElms(<F1>,<F2>) test if a family is the elements family of another
##
BIND_GLOBAL( "IsCollsElms", function ( F1, F2 )
    return HasElementsFamily( F1 )
       and IsIdenticalObj( ElementsFamily(F1), F2 );
end );

BIND_GLOBAL( "IsCollCollsElms", function ( F1, F2 )
    return HasElementsFamily( F1 )
       and HasElementsFamily( ElementsFamily( F1 ) )
       and IsIdenticalObj( ElementsFamily( ElementsFamily( F1 ) ), F2 );
end );

BIND_GLOBAL( "IsCollCollsElmsElmsX", function ( F1, F2, F3, F4 )
    return HasElementsFamily( F1 )
       and HasElementsFamily( ElementsFamily( F1 ) )
       and IsIdenticalObj( ElementsFamily( ElementsFamily( F1 ) ), F2 )
       and IsIdenticalObj( F2, F3 );
end );


#############################################################################
##
#O  IsCollsElmsElms( <F1>, <F2>, <F3> )
##
BIND_GLOBAL( "IsCollsElmsX", function( F1, F2, F3 )
    return HasElementsFamily(F1)
       and IsIdenticalObj( ElementsFamily(F1), F2 );
end );

BIND_GLOBAL( "IsCollsElmsElms", function( F1, F2, F3 )
    return HasElementsFamily(F1)
       and IsIdenticalObj( ElementsFamily(F1), F2 )
       and IsIdenticalObj( F2, F3 );
end );

BIND_GLOBAL( "IsCollsElmsElmsElms", function( F1, F2, F3, F4 )
    return HasElementsFamily(F1)
       and IsIdenticalObj( ElementsFamily(F1), F2 )
       and IsIdenticalObj( F2, F3 )
       and IsIdenticalObj( F2, F4 );
end );

BIND_GLOBAL( "IsCollsElmsElmsX", function( F1, F2, F3, F4 )
    return HasElementsFamily(F1)
       and IsIdenticalObj( ElementsFamily(F1), F2 )
       and IsIdenticalObj( F2, F3 );
end );

BIND_GLOBAL( "IsCollsElmsXElms", function( F1, F2, F3, F4 )
    return HasElementsFamily(F1)
       and IsIdenticalObj( ElementsFamily(F1), F2 )
       and IsIdenticalObj( F2, F4 );
end );

BIND_GLOBAL( "IsCollCollsElmsElms", function( F1, F2, F3 )
    return HasElementsFamily(F1)
       and HasElementsFamily( ElementsFamily(F1) )
       and IsIdenticalObj( ElementsFamily( ElementsFamily(F1) ), F2 )
       and IsIdenticalObj( F2, F3 );
end );

BIND_GLOBAL( "IsCollsCollsElms", function( F1, F2, F3 )
    return HasElementsFamily( F1 )
       and IsIdenticalObj( F1, F2 )
       and IsIdenticalObj( ElementsFamily( F1 ), F3 );
end );

BIND_GLOBAL( "IsCollsCollsElmsX", function( F1, F2, F3, F4 )
    return HasElementsFamily( F1 )
       and IsIdenticalObj( F1, F2 )
       and IsIdenticalObj( ElementsFamily( F1 ), F3 );
end );

BIND_GLOBAL( "IsCollsCollsElmsXX", function( F1, F2, F3, F4, F5 )
    return HasElementsFamily( F1 )
       and IsIdenticalObj( F1, F2 )
       and IsIdenticalObj( ElementsFamily( F1 ), F3 );
end );

BIND_GLOBAL( "IsCollsElmsColls", function( F1, F2, F3 )
    return IsIdenticalObj(F1, F3)
       and HasElementsFamily(F1)
       and IsIdenticalObj(F2, ElementsFamily(F1));
end );


BIND_GLOBAL( "IsCollsXElms", function( F1, F2, F3 )
    return HasElementsFamily( F1 )
       and IsIdenticalObj( F3, ElementsFamily( F1 ) );
end );

BIND_GLOBAL( "IsCollsXElmsX", function( F1, F2, F3, F4 )
    return HasElementsFamily( F1 )
       and IsIdenticalObj( F3, ElementsFamily( F1 ) );
end );

BIND_GLOBAL( "IsElmsCollsXX", function( F1, F2, F3, F4)
    return HasElementsFamily( F2 ) and
           IsIdenticalObj(F1, ElementsFamily(F2));
end );

BIND_GLOBAL( "IsCollsElmsXX", function( F1, F2, F3, F4)
    return HasElementsFamily( F1 ) and
           IsIdenticalObj(F2, ElementsFamily(F1));
end );

#############################################################################
##
#F  IsLieFamFam( <LieFam>, <Fam> )  . . . . . . . . . . . .  family predicate
#F  IsFamLieFam( <Fam>, <LieFam> )  . . . . . . . . . . . .  family predicate
#F  IsElmsLieColls( <Fam1>, <Fam2> )  . . . . . . . . . . .  family predicate
#F  IsElmsCollLieColls( <Fam1>, <Fam2> )  . . . . . . . . .  family predicate
##
BIND_GLOBAL( "IsLieFamFam", function( LieFam, Fam )
    return HasLieFamily( Fam ) and IsIdenticalObj( LieFamily( Fam ), LieFam );
end );

BIND_GLOBAL( "IsFamLieFam", function( Fam, LieFam )
    return HasLieFamily( Fam ) and IsIdenticalObj( LieFamily( Fam ), LieFam );
end );

BIND_GLOBAL( "IsElmsLieColls", function( Fam1, Fam2 )
    return     HasCollectionsFamily( Fam1 )
           and HasLieFamily( CollectionsFamily( Fam1 ) )
           and IsIdenticalObj( LieFamily( CollectionsFamily( Fam1 ) ), Fam2 );
end );

BIND_GLOBAL( "IsElmsCollLieColls", function( Fam1, Fam2 )
    return     HasCollectionsFamily( Fam1 )
           and HasLieFamily( CollectionsFamily( Fam1 ) )
           and HasCollectionsFamily( LieFamily( CollectionsFamily( Fam1 ) ) )
           and IsIdenticalObj( CollectionsFamily( LieFamily(
                                CollectionsFamily( Fam1 ) ) ), Fam2 );
end );

BIND_GLOBAL( "IsCollLieCollsElms", function( Fam1, Fam2 )
    return     HasCollectionsFamily( Fam2 )
           and HasLieFamily( CollectionsFamily( Fam2 ) )
           and HasCollectionsFamily( LieFamily( CollectionsFamily( Fam2 ) ) )
           and IsIdenticalObj( CollectionsFamily( LieFamily(
                                CollectionsFamily( Fam2 ) ) ), Fam1 );
end );


#############################################################################
##
#F  IsCoeffsElms( <coeff>, <elm> )
##
BIND_GLOBAL( "IsCoeffsElms", function( F1, F2 )
    return HasCoefficientsFamily(F2)
       and IsIdenticalObj( F1, CoefficientsFamily(F2) );
end );


#############################################################################
##
#F  IsElmsCoeffs( <elm>, <coeff> )
##
BIND_GLOBAL( "IsElmsCoeffs", function( F1, F2 )
    return HasCoefficientsFamily(F1)
       and IsIdenticalObj( CoefficientsFamily(F1), F2 );
end );


#############################################################################
##
##  some usual family predicates for mapping methods
##


#############################################################################
##
#F  FamRangeEqFamElm( <FamMap>, <FamElm> )
##
BIND_GLOBAL( "FamRangeEqFamElm", function( FamMap, FamElm )
    return     HasFamilyRange( FamMap )
           and IsIdenticalObj( FamElm, FamilyRange( FamMap ) );
end );


#############################################################################
##
#F  FamSourceEqFamElm( <FamMap>, <FamElm> )
##
BIND_GLOBAL( "FamSourceEqFamElm", function( FamMap, FamElm )
    return     HasFamilySource( FamMap )
           and IsIdenticalObj( FamElm, FamilySource( FamMap ) );
end );


#############################################################################
##
#F  CollFamRangeEqFamElms( <FamMap>, <FamElms> )
##
BIND_GLOBAL( "CollFamRangeEqFamElms", function( FamMap, FamElms )
    return     HasFamilyRange( FamMap )
           and HasElementsFamily( FamElms )
           and IsIdenticalObj( ElementsFamily( FamElms ),
                            FamilyRange( FamMap ) );
end );


#############################################################################
##
#F  CollFamSourceEqFamElms( <FamMap>, <FamElms> )
##
BIND_GLOBAL( "CollFamSourceEqFamElms", function( FamMap, FamElms )
    return     HasFamilySource( FamMap )
           and HasElementsFamily( FamElms )
           and IsIdenticalObj( ElementsFamily( FamElms ),
                            FamilySource( FamMap ) );
end );


#############################################################################
##
#F  FamElmEqFamRange( <FamElm>, <FamMap> )
##
BIND_GLOBAL( "FamElmEqFamRange", function( FamElm, FamMap )
    return     HasFamilyRange( FamMap )
           and IsIdenticalObj( FamElm, FamilyRange( FamMap ) );
end );


#############################################################################
##
#F  FamElmEqFamSource( <FamElm>, <FamMap> )
##
BIND_GLOBAL( "FamElmEqFamSource", function( FamElm, FamMap )
    return     HasFamilySource( FamMap )
           and IsIdenticalObj( FamElm, FamilySource( FamMap ) );
end );


#############################################################################
##
#F  FamSource2EqFamRange1( <Fam1>, <Fam2> )
##
BIND_GLOBAL( "FamSource2EqFamRange1", function( Fam1, Fam2 )
    return     HasFamilySource( Fam2 )
           and HasFamilyRange(  Fam1 )
           and IsIdenticalObj( FamilyRange( Fam1 ), FamilySource( Fam2 ) );
end );


#############################################################################
##
#F  FamSource1EqFamRange2( <Fam1>, <Fam2> )
##
BIND_GLOBAL( "FamSource1EqFamRange2", function( Fam1, Fam2 )
    return     HasFamilySource( Fam1 )
           and HasFamilyRange(  Fam2 )
           and IsIdenticalObj( FamilyRange( Fam2 ), FamilySource( Fam1 ) );
end );


#############################################################################
##
#F  FamRange1EqFamRange2( <Fam1>, <Fam2> )
##
BIND_GLOBAL( "FamRange1EqFamRange2", function( Fam1, Fam2 )
    return     HasFamilyRange( Fam1 )
           and HasFamilyRange( Fam2 )
           and IsIdenticalObj( FamilyRange( Fam1 ), FamilyRange( Fam2 ) );
end );


#############################################################################
##
#F  FamSource1EqFamSource2( <Fam1>, <Fam2> )
##
BIND_GLOBAL( "FamSource1EqFamSource2", function( Fam1, Fam2 )
    return     HasFamilySource( Fam1 )
           and HasFamilySource( Fam2 )
           and IsIdenticalObj( FamilySource( Fam1 ), FamilySource( Fam2 ) );
end );


#############################################################################
##
#F  FamMapFamSourceFamRange( <FamMap>, <FamElm1>, <FamElm2> )
##
BIND_GLOBAL( "FamMapFamSourceFamRange", function( FamMap, FamElm1, FamElm2 )
    return     HasFamilySource( FamMap )
           and HasFamilyRange(  FamMap )
           and IsIdenticalObj( FamilySource( FamMap ), FamElm1 )
           and IsIdenticalObj( FamilyRange(  FamMap ), FamElm2 );
end );


#############################################################################
##
#F  FamSourceRgtEqFamsLft( <FamLft>, <FamRgt> )
##
BIND_GLOBAL( "FamSourceRgtEqFamsLft", function( FamLft, FamRgt )
    return     HasFamilySource( FamLft )
           and HasFamilyRange(  FamLft )
           and IsIdenticalObj( FamilySource( FamLft ), FamilyRange(  FamLft ) )
           and HasFamilySource( FamRgt )
           and IsIdenticalObj( FamilySource( FamRgt ), FamilyRange(  FamLft ) );
end );


#############################################################################
##
#F  FamSourceNotEqFamElm( <FamMap>, <FamElm> )
##
BIND_GLOBAL( "FamSourceNotEqFamElm", function( FamMap, FamElm )
    return not FamSourceEqFamElm( FamMap, FamElm );
end );


#############################################################################
##
#F  FamRangeNotEqFamElm( <FamMap>, <FamElm> )
##
BIND_GLOBAL( "FamRangeNotEqFamElm", function( FamMap, FamElm )
    return not FamRangeEqFamElm( FamMap, FamElm );
end );


#############################################################################
##
#F  IsMagmaRingsRings( <FamRMelm>, <FamRelm> )  . . . . . .  family predicate
#F  IsMagmaRingsMagmas( <FamRMelm>, <FamMelm> ) . . . . . .  family predicate
#F  IsRingsMagmaRings( <FamRelm>, <FamRMelm> )  . . . . . .  family predicate
#F  IsMagmasMagmaRings( <FamMelm>, <FamRMelm> ) . . . . . .  family predicate
##
BIND_GLOBAL( "IsMagmaRingsRings", function( FamRM, FamR )
    return     IsBound( FamRM!.familyRing )
           and IsIdenticalObj( ElementsFamily( FamRM!.familyRing ), FamR );
end );

BIND_GLOBAL( "IsMagmaRingsMagmas", function( FamRM, FamM )
    return     IsBound( FamRM!.familyMagma )
           and IsIdenticalObj( ElementsFamily( FamRM!.familyMagma ), FamM );
end );

BIND_GLOBAL( "IsRingsMagmaRings", function( FamR, FamRM )
    return     IsBound( FamRM!.familyRing )
           and IsIdenticalObj( ElementsFamily( FamRM!.familyRing ), FamR );
end );

BIND_GLOBAL( "IsMagmasMagmaRings", function( FamM, FamRM )
    return     IsBound( FamRM!.familyMagma )
           and IsIdenticalObj( ElementsFamily( FamRM!.familyMagma ), FamM );
end );

BIND_GLOBAL( "IsMagmaCollsMagmaRingColls", function( FamM, FamRM )
    return     HasElementsFamily( FamM )
           and HasElementsFamily( FamRM )
           and IsBound( ElementsFamily( FamRM )!.familyMagma )
           and IsIdenticalObj( ElementsFamily( FamRM )!.familyMagma, FamM );
end );

BIND_GLOBAL( "IsRingCollsMagmaRingColls", function( FamR, FamRM )
    return     HasElementsFamily( FamR )
           and HasElementsFamily( FamRM )
           and IsBound( ElementsFamily( FamRM )!.familyRing )
           and IsIdenticalObj( ElementsFamily( FamRM )!.familyRing, FamR );
end );

[ Dauer der Verarbeitung: 0.83 Sekunden  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge