A transaction will have one or more sigops (signature operations). Let's denote these as S1, S2, ..., Sn. Apparently verifying these involves considering pairs, e.g. (S1, S2), (S1, S3), ..., (S1, Sn), (S2, S3), (S2, S4), ..., (S2, Sn), ..., (Sn-1, Sn). This leads to quadratic growth of the compute time. To avoid running behind the live stream of blocks, transactions are limited in size; they cannot span multiple blocks. Furthermore, the block size is limited; currently to 1MB.
The least compute intensive block is composed of a single transaction with only one sigop. The most computational intensive block is also composed of a single transaction but with as many sigops as will fit. A block with two or more transactions will be less computational intense. A block full of many transactions, each with just a single sigop, is minimal in terms of compute power required to verify it.
Let's denote transactions, Tk, where k is the number of sigops. A block is composed of a set of transactions, (Tk1, Tk2, ..., Tkn). The verification time is then approximated by K12+K22+...+Kn2.
To scale we must either;
1) have fast enough hardware
2) improve the algorithm, i.e. verify without pairing
3) verify in the background (although the verification has to happen sometime)
4) constrain the sum of sigops/transaction in a block
Can someone please provide an example of transaction that requires two or more sigops?