Making definitions precise

What is a chair? If I ask you to think of a prototypical chair, you'll probably think of a chair that has four legs, a seat, and a back. But if I ask you to define a chair, you'll likely realize that your definition is imprecise. For example, suppose you say that a chair is something that you rest your butt on, to take the majority of weight off your feet. Well then, is a horse a chair? Suppose you say "neigh" (my God I'm funny). Well, you can't simply add that a chair must have legs, because a horse has legs too! Also, depending on how you wish to define chairs, you might wish to include yoga balls and hammock chairs, which certainly have no legs. Maybe you wish to say a chair must not be organic. But would you consider a large tree stump a chair? If I were to define a chair succinctly, I might say its a non-living object that you rest your butt on to take the majority of weight off your feet. But even here, I've made the decision to exclude legs, and thus, we might still disagree on what a chair is. For us to talk about what a chair is, without ambiguity, we need an objective measurement. Some tool that can determine whether something is a chair or non-chair. It might turn out that making this determination is incredibly difficult. For example, if the input to your machine were a photo, then I could place a cardboard cutout of a chair in the room, and likely trick your machine into thinking it's a chair, when it's merely a projection of a chair. Maybe a 3D scan would fair better. But what if I made a chair out of foam? Because such a chair wouldn't support your weight, is it still a chair? Regardless of whether we disagree on specific determinations made by our machine, the important point is that we can both agree on what our machine does, because computer programs are precise. By having a computer program, or mathematical definition, as a point of agreement, we can prove statements about chairs, as defined by our program. For example, it's likely the case that "all chairs are red" is false, which we could prove by subjecting our machine to a non-red chair, and reading the determination of "chair." Depending on the program, it might also be the case that "all chairs are taller than 2 feet," which might be proven from the program's formal definition.