title: Are C/C++ library functions and operators the most optimal ones?
body: <p>So, at the divide &amp; conquer course we were taught:</p>
  
  <ol>
  <li>Karatsuba multiplication</li>
  <li>Fast exponentiation</li>
  </ol>
  
  <p>Now, given 2 positive integers a and b is <code>operator::*</code> faster than a <code>karatsuba(a,b)</code> or is <code>pow(a,b)</code> faster than </p>
  
  <pre><code>int fast_expo(int Base, int exp)
  {
      if (exp == 0) {
          return 1;
      }
      if (exp == 1) {
          return Base
      }
      if (exp % 2 == 0) {
          return fast_expo(Base, exp / 2) * fast_expo(Base, exp / 2);
      }
      else {
          return base * fast_expo(Base, exp / 2) * fast_expo(Base, exp / 2);
      }
  }
  </code></pre>
  
  <p>I ask this because I wonder if they have just a teaching purpose or they are already base implemented in the C/C++ language</p>