Можно использовать готовые библиотеки.
Например,
MathNet.Symbolics
Библиотека написана на F#, но вы можете использовать ее и в C# проекте:
Math-NET-Symbolics-with-C-VB-NET-and-C-CLI
Как видно из примера:
using MathNet.Symbolics;
using Expr = MathNet.Symbolics.SymbolicExpression;
...
Expr.Parse("1/(a*b"); // выбросит исключение
Expr.Parse("1/(a*b)").ToString(); // вернет строку "1/(a*b)"
API достаточно удобное.
С простыми функциями / формулами проблем быть не должно. Если возможностей будет не хватать или вы найдете баг - открывайте ишшью (на английском языке) или даже PR - мейнтейнер принимает их без проблем.
А я в свою очередь, как один из контрибуторов, буду рад ответить на возможные вопросы или помочь с реализацией функционала.
Есть и другие библиотеки, некоторые по возможностям превосходят MathNet.Symbolics, но так как я с ними не работал, то рекомендовать не могу.