Restraints — MobsPy 2.2 documentation

# Restraints

MobsPy has some restraints for modeling regarding the characteristics combinations. In this model, we will discuss them.

    [4]:

    from mobspy import *

    try:
        # Here we define two base Species
        A, C = BaseSpecies(2)

        # We them add two characteristics to characteristics to each of them
        A.aaa, A.bbb
        C.aaa, C.ccc

        # And add them to the simulation object
        MySim = Simulation(A | C)
        MySim.compile()
    except SystemExit:
        pass

    ERROR: A characteristic must be unique for each species
    Repetition in: C, A
    Characteristics: {'aaa', 'ccc'}, {'aaa', 'bbb'}

MobsPy does not allow for the same characteristic to be added to two different meta-species to allow for the proper query structure. Characteristics can only be shared through inheritance. This model does not compile because both A and C have the characteristic ‘aaa’ added to them.

    [ ]: