Recently I learned that in English you say things like

  • The latter was calculated by approximating the surface area to that of a spheroid.
  • The only thing approximating to a real dessert was baklava, a particularly mean and thankless example of its kind being dry, almost syrup and nut-free.

(Taken from Oxford's Online Dictionary.)

Note the preposition to.

Now, would you put to into the following sentence (concerning a formal method)?

  • Our nonrelational program analysis will overapproximate [to] the actual program semantics.

Please don't answer unless you are good at English. (You can move the question to the English community, but to date I have been under the impression that most English teachers are not that aware of the computer science vocabulary. They are typically having a hard time trying to understand the meaning of the above sentence.)

  • You don't need to understand the technical words like nonrelational and semantics to know how to construct this sentence. “Our thingy will overapproximate [to?] the actual wozzname”. – Gilles 'SO- stop being evil' Jul 15 '16 at 12:51

In programming languages and computer science, we say "approximate program semantics" or "overapproximate the actual program semantics". In other words, don't include the "to".

In general, we say "approximate X" (don't include the "to") or "approximation to X" (include the "to").

  • 2
    You can approximate X to 5 digits, though. – Yuval Filmus Jul 14 '16 at 21:25

You say "approximate X" when X is the thing that you are approximating. You say "approximate X to Y" when Y is the degree or "destination" of the approximation.

To take a simple example, you might say, "We will approximate the radius of the circle." That is, we won't get a very precise measure of the radius of the circle: we will just get a rough number.

"We will approximate the size of the circle to the nearest the radius of the circle to the nearest inch." We won't get measurements more precise than an integer number of integers. Similarly, "We will approximate the radius to 3 decimal places."

By "destination", I mean that you are using one thing as an approximation of another. For example, you might say, "We will approximate the ellipse to a circle".

We don't always specify X if it's already been identified or is obvious from context. So someone might say, "We will approximate to three decimal places." What are we approximating? Hopefully that is clear from the context.

In your first example, the surface area is not a spheroid. He is approximating to a spheroid. Note that it is not the spheroid that is being approximated, but the surface area.

In your second example, something is being approximated to a dessert. In context, it's clear that the thing that is being approximated is an item of food. This statement is not intended literally. He's saying that none of the food items in question actually IS a dessert, and only one even approximated to being a dessert. Presumably whoever prepared the food would say that of course it is a dessert. The statement here is intended to be an insult. It's not even a bad dessert, it doesn't qualify as a dessert at all.

You would not say that your "analysis will approximate to the actual program semantics", just "analysis will approximate the actual program semantics". The thing being approximated is the semantics. There is not something else that is being compared to the semantics. With the "to", it would sound like you are saying that the analysis is being compared to the semantics, which doesn't make sense to me.

  • @LeonMeier I'm not sure I follow what you're trying to say in that sentence, but I think the short answer is: Yes. – Jay Jul 15 '16 at 19:15
  • @LeonMeier Your sentence might be perfectly understandable in context. I'm not saying it's a bad sentence. Just that I don't understand what you're trying to say. – Jay Jul 18 '16 at 13:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy