title: Google sheets - Check all TRUE per row in boolean 2D array with ARRAYFORMULA
body: <p>I have the following data (created through a <code>ARRAYFORMULA</code> formula):</p>
  <div class="s-table-container">
  <table class="s-table">
  <thead>
  <tr>
  <th></th>
  <th style="text-align: center;">A</th>
  <th style="text-align: center;">B</th>
  <th style="text-align: center;">C</th>
  <th style="text-align: center;">D</th>
  </tr>
  </thead>
  <tbody>
  <tr>
  <td>1</td>
  <td style="text-align: center;">TRUE</td>
  <td style="text-align: center;">TRUE</td>
  <td style="text-align: center;">FALSE</td>
  <td style="text-align: center;">TRUE</td>
  </tr>
  <tr>
  <td>2</td>
  <td style="text-align: center;">TRUE</td>
  <td style="text-align: center;">TRUE</td>
  <td style="text-align: center;">TRUE</td>
  <td style="text-align: center;">TRUE</td>
  </tr>
  <tr>
  <td>3</td>
  <td style="text-align: center;">TRUE</td>
  <td style="text-align: center;">FALSE</td>
  <td style="text-align: center;">TRUE</td>
  <td style="text-align: center;">TRUE</td>
  </tr>
  </tbody>
  </table>
  </div>
  <p>If in a row all values are TRUE, the output for that row should be TRUE. If even 1 is FALSE, it should be FALSE instead.
  So a formula on the above table should output this:</p>
  <div class="s-table-container">
  <table class="s-table">
  <thead>
  <tr>
  <th></th>
  <th style="text-align: center;">E</th>
  </tr>
  </thead>
  <tbody>
  <tr>
  <td>1</td>
  <td style="text-align: center;">FALSE</td>
  </tr>
  <tr>
  <td>2</td>
  <td style="text-align: center;">TRUE</td>
  </tr>
  <tr>
  <td>3</td>
  <td style="text-align: center;">FALSE</td>
  </tr>
  </tbody>
  </table>
  </div><h2>Restrictions</h2>
  <ul>
  <li>The 1st table's size is not fixed. There could be more columns or rows. Therefore, no manual row by row check.</li>
  <li>It should be 1 function that outputs to multiple rows (like the 2nd table), therefore it should be through the <code>ARRAYFORMULA</code> formula (not dragging a cell down, as this works badly when adding rows/columns at a later stage).</li>
  </ul>
  <h2>What I tried</h2>
  <h3>AND</h3>
  <p><code>AND</code>, but that gives only a single output:</p>
  <pre><code>=AND(A1:D3)
  # FALSE
  </code></pre>
  <p>Also, <a href="https://stackoverflow.com/questions/64425099/why-does-the-and-condition-function-doesnt-work-with-arrayfomula/64425306#64425306">AND doesn't work with ARRAYFORMULA</a></p>
  <h3>*</h3>
  <p>A <code>*</code> function as AND in ARRAYFORMULA:</p>
  <pre><code>=ARRAYFORMULA(A1:A3*B1:B3*C1:C3)
  </code></pre>
  <p>Problems are:</p>
  <ul>
  <li>This is a manual process, which doesn't scale.</li>
  <li>If a column is added later, it will become e.g. <code>A1:A3*C1:C3*D1:D3</code> instead of <code>A1:A3*B1:B3*C1:C3*D1:D3</code></li>
  </ul>
  <h3>A1:C3*</h3>
  <p>Unfortunately, this logic is not accepted:</p>
  <pre><code>=ARRAYFORMULA(A1:C3*)
  </code></pre>
  <h3>QUERY</h3>
  <p>Maybe a QUERY can provide this logic? But I'm not able to come up with how that query should look like.</p>
  <h2>Question</h2>
  <p>How do I do a row-wise check if all values are TRUE with a single ARRAYFORMULA function (taking into account the restrictions mentioned)?</p>