# [MATL](https://esolangs.org/wiki/MATL), 20 bytes 2i^:qt!Z~Zltk=XR2#fh This works with [current version (14.0.0)](https://github.com/lmendo/MATL/releases/tag/14.0.0) of the language/compiler. [__Try it online!__](http://matl.tryitonline.net/#code=MmleOnF0IVp-Wmx0az1YUjIjZmg&input=NA) ### Explanation This uses more or less the same idea as [@xnor's answer](https://codegolf.stackexchange.com/a/75656/36398). 2i^ % take input n and compute 2^n :q % range [0,1,...,2^n-1] (row vector) t! % duplicate, transpose into a column vector Z~ % bitwise XOR with broadcast Zl % binary logarithm tk % duplicate and round down = % true if equal, i.e. for powers of 2 XR % upper triangular part, above diagonal 2#f % row and index columns of nonzero values h % concatenate vertically