Reuse PES learning in several synapse

I want to learn the same function in two synapses that receive different inputs from different ensembles.

I have that simple code:

import nengo
import math

def my_secret_function(x):
    return math.sin(x)

model = nengo.Network()
with model:
    x = nengo.Node(lambda t: math.sin(t))
    x_desired = nengo.Node(size_in=1)
    x_pre = nengo.Ensemble(100, dimensions=1)
    x_post = nengo.Ensemble(100, dimensions=1)
    nengo.Connection(x, x_pre)
    nengo.Connection(x, x_desired, function=my_secret_function)
    conn = nengo.Connection(x_pre, x_post, learning_rule_type=nengo.PES(5e-4))
    error = nengo.Node(size_in=1)
    nengo.Connection(x_post, error)
    nengo.Connection(x_desired, error, transform=-1)
    nengo.Connection(error, conn.learning_rule)

Which generates the model:

This model receives x and represent it in x_pre, the x_desired calculates the sinusoid of x, thus the connection between x_pre and x_post learns to calculate sin(x) (actually, in no time).

Now I want to use the same learnings (or function…) with other input, y, that I control manually. So, I added:

y = nengo.Node([0])
y_pre = nengo.Ensemble(100, dimensions=1)
y_post = nengo.Ensemble(100, dimensions=1)
nengo.Connection(y, y_pre)
conn2 = nengo.Connection(y_pre, y_post, learning_rule_type=nengo.PES(5e-4))
nengo.Connection(error, conn2.learning_rule)

Which generates the model:

Unfortunately, as shown in the image above, when I set y=1 I don’t get the right answer. Actually, the connection between y_pre and y_post is moving as the connection between x_pre and x_post.

Is there a way to apply and reuse the learning from one synapse to another one, so they will represent the same function but with different inputs?