Существует на самом деле целая выделенная книга (среди других вещей) к быстра методы для вычисления \pi: 'Пи и AGM', Jonathan и Peter Borwein ( доступный на Amazon).
я изучил AGM и связал алгоритмы вполне немного: это довольно интересно (хотя иногда нетривиальный).
Примечание, что для реализации большинства современных алгоритмов для вычисления \pi Вам будет нужна библиотека арифметики мультиточности ( GMP является вполне хорошим выбором, хотя это было некоторое время, так как я в последний раз использовал его).
временная сложность лучших алгоритмов находится в O (M (n) журнал (n)), где M (n) является временной сложностью для умножения двух n-bit целых чисел (M (n) =O (n журнал (n) журнал (журнал (n))) использование основанных на FFT алгоритмов, которые обычно необходимы, когда вычислительные цифры \pi и такой алгоритм реализованы в GMP).
Примечание, что даже при том, что математика позади алгоритмов не могла бы быть тривиальной, сами алгоритмы обычно являются несколькими строками псевдокода и их реализацией, обычно очень просто (если Вы приняли решение не записать свою собственную арифметику мультиточности:-)).
Я не уверен, что вы ищете, но вы можете взглянуть на Frama-C и его язык аннотаций ACSL для C.
По сравнению с контрактами .NET, контракты ACSL не являются исполняемыми (их невозможно проверить с помощью утверждений времени выполнения), но они лучше подходят для статического анализа (они более выразительны и позволяют писать и статически проверять полную спецификацию. По крайней мере, теоретически)