Большое спасибо всем.  (Пока писал появилось несколько новых сообщений. Однако "не пропадать же добру".)  
 
 Не ожидал, что получится такая дискуссия. Я конечно искал в интернете  и много нашел   разных сайтов с обсуждением этого вопроса.  Но меня конкретно интересовало  какой алгоритм применяется  в  Mathematika.  В  справке доступной мне  Mathematika  ничего не нашел.  

  Поэтому и обратился на сайт.
Мне кажется,   самые лучшие варианты ответов есть на  СоХабр  (ссылка   
https://sohabr.net/habr/post/255761/ )
Там были рассмотрены несколько разных вариантов. Первый самый простой (Наивный алгоритм) в цикле. Второй - Алгоритм вычисления деревом,  третий - Алгоритм вычисления факторизацией, четвертый - Библиотека GMP. Все подробно и детально расписано, приводятся листинги программ.  Очень много есть модификаций алгоритмов в комментариях. 
На сайте 
http://ru.stackoverflow.com/questions/2479/%D0%A1%D0%B0%D0%BC%D1%8B%D0%B9-%D0%B1%D1%8B%D1%81%D1%82%D1%80%D1%8B%D0%B9-%D1%84%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D0%B0%D0%BBтоже есть много интересного и много ссылок. 
Может быть какая-нибудь оптимизация формулы Стирлинга (или даже непосредственно она)?
На этом сайте  один из вариантов  как раз использует формулу Стирлинга. В результате получается формула  
Цитата:
 «... с бинарным масштабным коэффициентом, ….  которая при правильно выбранной точности вычислений будет точной.»
Там же была указана  очень интересная статья   On the Complexity Calculating Factorials (по ссылке  
http://www.cecm.sfu.ca/personal/pborwein/PAPERS/P29.pdf) . В ней  предлагают считать факториал за  

   (где 

 — время перемножения двух n-значных чисел).
Луддизм 21-го столетия - соревноваться с компилятором в оптимизации.
Не совсем понял. Причем тут Луддиты? Кажется они ломали машины. 
А уважаемый 
rockclimber вроде ничего не ломал.  
 
 Еще раз большое спасибо за ссылки. Буду смотреть и постараюсь разобраться.
P.S. У меня даже появилась одна идейка по рационализации программы простого цикла. За счет нее количество итераций в цикле уменьшается в два раза. Когда полностью ее добью, (если все получится) то выложу для обозрения