diff --git a/tracing-recursion.py b/tracing-recursion.py
new file mode 100644
index 0000000000000000000000000000000000000000..4be8cdc90661feaf434f0fc5d5d1917eb5d69e53
--- /dev/null
+++ b/tracing-recursion.py
@@ -0,0 +1,324 @@
+#!/usr/bin/python3
+# -*- coding: utf-8 -*-
+#gantchou koffi
+#mi13
+#30/01
+from  ap_decorators import trace
+#Somme:
+@trace
+
+def somme(a: int, b: int) -> int:
+    """
+    Renvoie la somme de deux nombres a et b.
+    """
+    if b == 0:
+        return a
+    else:
+        return somme(a + 1, b - 1)
+# somme(10,12)
+#  -> somme((10, 12), {})
+# ... -> somme((11, 11), {})
+# ...... -> somme((12, 10), {})
+# ......... -> somme((13, 9), {})
+# ............ -> somme((14, 8), {})
+# ............... -> somme((15, 7), {})
+# .................. -> somme((16, 6), {})
+# ..................... -> somme((17, 5), {})
+# ........................ -> somme((18, 4), {})
+# ........................... -> somme((19, 3), {})
+# .............................. -> somme((20, 2), {})
+# ................................. -> somme((21, 1), {})
+# .................................... -> somme((22, 0), {})
+# .................................... <- 22
+# ................................. <- 22
+# .............................. <- 22
+# ........................... <- 22
+# ........................ <- 22
+# ..................... <- 22
+# .................. <- 22
+# ............... <- 22
+# ............ <- 22
+# ......... <- 22
+# ...... <- 22
+# ... <- 22
+#  <- 22
+# 22
+
+
+#Binomial:
+@trace    
+def binomial(n: int, r: int) -> int:
+    """
+    Renvoie le coefficient binomial nCr.
+    """
+    if n == 1 and r == 1:
+        return 1
+    elif r==0:
+        return 1
+    elif n==0:
+        return n
+     
+    else:
+        return binomial(n - 1, r - 1) + binomial(n - 1, r)
+# binomial(6,5)
+#  -> binomial((6, 5), {})
+# ... -> binomial((5, 4), {})
+# ...... -> binomial((4, 3), {})
+# ......... -> binomial((3, 2), {})
+# ............ -> binomial((2, 1), {})
+# ............... -> binomial((1, 0), {})
+# ............... <- 1
+# ............... -> binomial((1, 1), {})
+# ............... <- 1
+# ............ <- 2
+# ............ -> binomial((2, 2), {})
+# ............... -> binomial((1, 1), {})
+# ............... <- 1
+# ............... -> binomial((1, 2), {})
+# .................. -> binomial((0, 1), {})
+# .................. <- 0
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 1
+# ......... <- 3
+# ......... -> binomial((3, 3), {})
+# ............ -> binomial((2, 2), {})
+# ............... -> binomial((1, 1), {})
+# ............... <- 1
+# ............... -> binomial((1, 2), {})
+# .................. -> binomial((0, 1), {})
+# .................. <- 0
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 1
+# ............ -> binomial((2, 3), {})
+# ............... -> binomial((1, 2), {})
+# .................. -> binomial((0, 1), {})
+# .................. <- 0
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# ............... <- 0
+# ............... -> binomial((1, 3), {})
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 0
+# ......... <- 1
+# ...... <- 4
+# ...... -> binomial((4, 4), {})
+# ......... -> binomial((3, 3), {})
+# ............ -> binomial((2, 2), {})
+# ............... -> binomial((1, 1), {})
+# ............... <- 1
+# ............... -> binomial((1, 2), {})
+# .................. -> binomial((0, 1), {})
+# .................. <- 0
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 1
+# ............ -> binomial((2, 3), {})
+# ............... -> binomial((1, 2), {})
+# .................. -> binomial((0, 1), {})
+# .................. <- 0
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# ............... <- 0
+# ............... -> binomial((1, 3), {})
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 0
+# ......... <- 1
+# ......... -> binomial((3, 4), {})
+# ............ -> binomial((2, 3), {})
+# ............... -> binomial((1, 2), {})
+# .................. -> binomial((0, 1), {})
+# .................. <- 0
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# ............... <- 0
+# ............... -> binomial((1, 3), {})
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 0
+# ............ -> binomial((2, 4), {})
+# ............... -> binomial((1, 3), {})
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# ............... <- 0
+# ............... -> binomial((1, 4), {})
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# .................. -> binomial((0, 4), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 0
+# ......... <- 0
+# ...... <- 1
+# ... <- 5
+# ... -> binomial((5, 5), {})
+# ...... -> binomial((4, 4), {})
+# ......... -> binomial((3, 3), {})
+# ............ -> binomial((2, 2), {})
+# ............... -> binomial((1, 1), {})
+# ............... <- 1
+# ............... -> binomial((1, 2), {})
+# .................. -> binomial((0, 1), {})
+# .................. <- 0
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 1
+# ............ -> binomial((2, 3), {})
+# ............... -> binomial((1, 2), {})
+# .................. -> binomial((0, 1), {})
+# .................. <- 0
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# ............... <- 0
+# ............... -> binomial((1, 3), {})
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 0
+# ......... <- 1
+# ......... -> binomial((3, 4), {})
+# ............ -> binomial((2, 3), {})
+# ............... -> binomial((1, 2), {})
+# .................. -> binomial((0, 1), {})
+# .................. <- 0
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# ............... <- 0
+# ............... -> binomial((1, 3), {})
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 0
+# ............ -> binomial((2, 4), {})
+# ............... -> binomial((1, 3), {})
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# ............... <- 0
+# ............... -> binomial((1, 4), {})
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# .................. -> binomial((0, 4), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 0
+# ......... <- 0
+# ...... <- 1
+# ...... -> binomial((4, 5), {})
+# ......... -> binomial((3, 4), {})
+# ............ -> binomial((2, 3), {})
+# ............... -> binomial((1, 2), {})
+# .................. -> binomial((0, 1), {})
+# .................. <- 0
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# ............... <- 0
+# ............... -> binomial((1, 3), {})
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 0
+# ............ -> binomial((2, 4), {})
+# ............... -> binomial((1, 3), {})
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# ............... <- 0
+# ............... -> binomial((1, 4), {})
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# .................. -> binomial((0, 4), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 0
+# ......... <- 0
+# ......... -> binomial((3, 5), {})
+# ............ -> binomial((2, 4), {})
+# ............... -> binomial((1, 3), {})
+# .................. -> binomial((0, 2), {})
+# .................. <- 0
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# ............... <- 0
+# ............... -> binomial((1, 4), {})
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# .................. -> binomial((0, 4), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 0
+# ............ -> binomial((2, 5), {})
+# ............... -> binomial((1, 4), {})
+# .................. -> binomial((0, 3), {})
+# .................. <- 0
+# .................. -> binomial((0, 4), {})
+# .................. <- 0
+# ............... <- 0
+# ............... -> binomial((1, 5), {})
+# .................. -> binomial((0, 4), {})
+# .................. <- 0
+# .................. -> binomial((0, 5), {})
+# .................. <- 0
+# ............... <- 0
+# ............ <- 0
+# ......... <- 0
+# ...... <- 0
+# ... <- 1
+#  <- 6
+# 6
+
+
+#Palindrome:
+@trace
+def is_palindromic(s: str) -> bool:
+    """
+    Vérifie si une chaîne de caractères est un palindrome.
+    """
+    if len(s) <= 1:
+        return True
+    if s[0] != s[-1]:
+        return False
+    return is_palindromic(s[1:-1])
+
+# is_palindromic('ressasser')
+#  -> is_palindromic(('ressasser',), {})
+# ... -> is_palindromic(('essasse',), {})
+# ...... -> is_palindromic(('ssass',), {})
+# ......... -> is_palindromic(('sas',), {})
+# ............ -> is_palindromic(('a',), {})
+# ............ <- True
+# ......... <- True
+# ...... <- True
+# ... <- True
+#  <- True
+# True
+#  is_palindromic('ketib')
+#  -> is_palindromic(('ketib',), {})
+#  <- False
+# False