define function on two sets

asked 7 years ago

this post is marked as community wiki

This post is a wiki. Anyone with karma >750 is welcome to improve it.

Hi. I have two sets: X, Y. I want to define a function

F : X ->Y

and I have the values of f(x). I searched the net but found nothing. thanks.

Preview: (hide)

Comments

Your question is not very clear to me. I suppose that X and Y are finite sets. If you know a map from X to Y and you want to define it in SageMath, you may define a dictionary with keys X and values Y : define d = dict() and then d[x] = y for all pairs (x,y) such that y=f(x). If on the other hand you have f defined in some way, such as a dictionary or something similar, and you want it truly as a function, you may write (I use the dictionary, known globally):

def f(x):
    if x in d:
        return d[x]
    raise ValueError("{} is not in the domain of f".format(x))
B r u n o gravatar imageB r u n o ( 7 years ago )

Could you please provide the sets and the function you want to deal with in Sage ?

tmonteil gravatar imagetmonteil ( 7 years ago )