import re def Helper(input_str): """Ayuda contextual para funciones SymPy comunes""" sympy_funcs = { "diff": "Derivada: diff(expr, var). Ej: diff(sin(x), x)", "integrate": "Integral: integrate(expr, var). Ej: integrate(x**2, x)", "solve": "Resolver ecuaciones: solve(expr, var). Ej: solve(x**2-1, x)", "limit": "Límite: limit(expr, var, valor). Ej: limit(sin(x)/x, x, 0)", "series": "Serie de Taylor: series(expr, var, punto, n). Ej: series(exp(x), x, 0, 5)", "Matrix": "Matrices: Matrix([[a, b], [c, d]]). Ej: Matrix([[1,2],[3,4]])", "plot": "Gráfica: plot(expr, (var, a, b)). Ej: plot(sin(x), (x, 0, 2*pi))", "plot3d": "Gráfica 3D: plot3d(expr, (x, a, b), (y, c, d))", "simplify": "Simplificar: simplify(expr). Ej: simplify((x**2 + 2*x + 1))", "expand": "Expandir: expand(expr). Ej: expand((x+1)**2)", "factor": "Factorizar: factor(expr). Ej: factor(x**2 + 2*x + 1)", "collect": "Agrupar: collect(expr, var). Ej: collect(x*y + x, x)", "cancel": "Cancelar: cancel(expr). Ej: cancel((x**2 + 2*x + 1)/(x+1))", "apart": "Fracciones parciales: apart(expr, var). Ej: apart(1/(x*(x+1)), x)", "together": "Unir fracciones: together(expr). Ej: together(1/x + 1/y)", } for func, ayuda in sympy_funcs.items(): if input_str.strip().startswith(func): return ayuda return None