## 1 Introduction  
Society has advanced quickly thanks to the development and use of machines and specialized tools that have made it possible to automate complex, repetitive, demanding, or dangerous tasks for human beings [1]. An important part of these devices is made up of mechanisms, i.e., rigid bodies joined together that interact through prismatic or rotational movements to generate, as a whole, more complex particular motions for different purposes [2]. The applications of different types of mechanisms can be found in the area of construction [3], in the automotive industry [4], in health and rehabilitation [5], in the development of androids [6], in aviation [7], or in specific processes for various industries [8]. One way to classify the above mechanisms is by the way in which the rigid bodies that make them up are arranged. In this way, the mechanisms can be open, closed, or hybrid kinematic chains [9]. In the first class are the well-known anthropomorphic robotic arms, which consist of several links sequentially linked from a fixed or base one [10]. The end effector in these systems (i.e., the tool used for a specific task) is typically located in the last link of the chain, and the rest of the links must coordinate to manipulate the position and orientation of the effector. Unlike robotic arms, in closed kinematic chain mechanisms, the first and last links are fixed in a loop [2]. In this class of mechanisms, the effector is located at some particular point with respect to one of the links that creates the loop. Therefore, open-chain mechanisms are relatively easier to design and control, since each link is governed independently with respect to the previous one. In addition, their working space is larger and not limited by the location of their fixed links, which is contrary to what happens in closed-chain mechanisms. On the other hand, closed-chain mechanisms are more precise and robust regarding external disturbances [11]. As for hybrid mechanisms, they contain both closed and open elements to take advantage, to some extent, of the strengths of each class, but they also face their difficulties [12]. Both open and closed kinematic chain mechanisms can be overactuated, fully actuated, or underactuated, i.e., they can have, respectively, a greater, equal, or smaller number of motion-generating elements or actuators than the number of degrees of freedom required to perform a motion with the complete mechanism [10]. Among the most important kinematic chain mechanisms is the four-bar one. Many examples of the successful use of this mechanism in real-world applications can be found in the specialized literature [13; 14; 15; 16]. The widespread use of the four-bar mechanism is due to its ability to follow highly nonlinear closed trajectories with only one degree of freedom, in contrast to open-chain alternatives that require at least two degrees of freedom to produce similar trajectories, or closed-mechanism alternatives with a larger number of loops or degrees of freedom, thus resulting in significant savings in the cost involved in actuators and their control. For this, four-bar mechanisms must satisfy a series of constraints in their design that are known as Grashof's laws [17]. These laws establish relationships between the dimensions of the links in a four-bar mechanism that must be fulfilled in order for one or more of the links to be able to work as a crank, i.e., to be able to rotate completely, thereby producing complex closed trajectories with respect to points of interest in the mechanism. Therefore, one of the most relevant tasks in the design of four-bar Grashof-type mechanisms is the adjustment of the dimensions and locations of the links, which is a task known as dimensional synthesis [18]. Three types of dimensional synthesis exist: motion generation (body guidance), function generation, and path generation. The last one is the topic related to our work.