x=var('x')
y=var('y')
# a função vista em sala
f(x,y)=x^2*y
# seu gráfico, em 3d
R=sqrt(3.)
gf=plot3d(f(x,y),(x,-R*1.1,R*1.1),(y,-R*1.1,R*1.1),color="grey",opacity=.8)
# a restrição g(x,y)=0, que vamos ter que parametrizar para poder desenhar
# g(x,y)=x^2+y^2-3 é círculo de raio raiz de 3. Portanto
t=var('t')
grestr=parametric_plot3d( (R*cos(t),R*sin(t), 0), (t, 0, 2*pi),color="red",thickness=2)
# gráfico de f restrita ao círculo g(x,y)=0
gfrestr=parametric_plot3d( (R*cos(t),R*sin(t), f(R*cos(t),R*sin(t))), (t, 0, 2*pi),color="blue",thickness=2)
# um dos pontos que achamos em sala, marcado no gráfico
ponto=point3d((sqrt(2.),1,f(sqrt(2.),1)),size=10,color="red")
gf+grestr+gfrestr+ponto