The power set of the power set of {0, 1} has 16 members, so the power set of the power set of the power set of {0, 1} has 2^16 members.  2^16 = 65,536.

 

<!DOCTYPE html>

 

<!-- Steve Ratering

     2021/8/16

     Display the power set of the power set of the power set of {0,1}.

 

     PS({}) = {{}}

     PS({a, ...}) = PS({...}) U {a} + PS({...})

-->

  <head>

    <title>Power Set</title>

    <script>

 

    function addm(first, ps){

      // if ps is {{1},{0}} return {first,1},{first,0}}

      // if ps is {{}} return {first}}

      // when depth goes from 1 to 2 insert <first,>

      // except no , if next char is }

      var depth = 1;

      var i;

      var result = "";

 

      for (i = 1; i < ps.length; i++){

        result += ps[i];

        if (ps[i] == "{"){

          depth++;

          if (depth == 2){

            if (ps[i + 1] == "}"){

              result += first;

            } else {

              result += (first + ",");

            }

          }

        }

        if (ps[i] == "}"){

          depth--;

        }

      }

      return result;

    }

 

    function unionFirstPlus(ps, first){

      return ps.substring(0, ps.length - 1) + "," + addm(first, ps);

    }

 

    function first(s){

      // s is a balanced string of characters from '{' '}' '0' '1' ','

      var depth = 0;

      var i, prevState;

      var result = "";

      var state = "before";

 

      for (i = 0; i < s.length; i++){

        prevState = state;

 

        if (s[i] == "{"){

          depth++;

          if (prevState == "before" && depth == 1){

            state = "open";

          }

          if (prevState == "open" && depth == 2){

            state = "in";

          }

        }

        if (s[i] == "}"){

          depth--;

          if (depth == 1 && prevState == "in"){

            result += s[i];

            return result;

          }

        }

        if (state == "in"){

          result += s[i];

        }

        if (prevState == "open" && state != "in" && (s[i] == "0" || s[i] == "1")){

          return s[i];

        }

      }

    }

 

    function rest(s){

      // s is a balanced string of characters from '{' '}' '0' '1' ','

      var depth = 0;

      var i, prevState;

      var result = "";

      var state = "before";

 

      for (i = 0; i < s.length; i++){

        prevState = state;

        if (s[i] == "{"){

          depth++;

          if (prevState == "before" && depth == 1){

            state = "open";

            var result = "{";

          }

          if (prevState == "open" && depth == 2){

            state = "in";

          }

        }

        if (s[i] == "}"){

          depth--;

          if (depth == 1 && prevState == "in"){

            state = "out";

          }

          if (depth == 0){

            result += s[i];

            return result;

          }

        }

        if (depth == 1 && s[i] == ","){

          state = "copy";

        }

        if (prevState == "copy"){

            result += s[i];

        }

      }

    }

 

    function powerSet(s){

      var car, cdr;

 

      if (s == '{}'){

        return '{{}}';

      } else {

        car = first(s);

        cdr = rest(s);

        return unionFirstPlus(powerSet(cdr), car);

      }

    }

 

    function fn(){

      var binarySet = '{0,1}';

      var emptySet = '{}';

 

      var result = powerSet(powerSet(powerSet(binarySet)));

      // var result = powerSet(powerSet(powerSet(powerSet(powerSet(emptySet)))));

 

      document.getElementById('output').innerHTML = result;

    }

    

    </script>

  </head>

 

  <body>

    <p id = 'output'></p>

    <script>

      fn();

    </script>

  </body>

 

</html>