Bipartite graph minimal amount of vertices required I have a bipartite graph made of two sets (SET 1 and SET 2) and I want to determine how many vertices from the SET 1 I can remove while still having 
every vertex of the SET 2 connected to at least one vertex of the SET 1.

In this example, E and F can obviously be removed as D and C are connected 5 and 6.
But we could also remove B as A and C together cover more points. But so far I only have a very slow implementation of this which is to compare every vertex of SET 1 to every combination of vertices of SET1.
Is there any smart way to do this? I've been thinking about Kőnig's theorem but I didn't find a way to use it in this context as it seems to be made for undirected bipartite graphs.

Also, there are some constraints the input follows:
-Every element of SET 2 is connected to SET 1
-Every node of SET 2 is connected exactly to two vertices of SET 1
Let's define a graph $G=(V,E)$, for which:


Set of vertices $V$ is identical to your SET1.
Two vertices $v_1,v_2 \in V$ are connected by an edge, if and only if there exists a vertex from the SET2, incident to both $v_1$ and $v_2$ in your bipartite graph.


For instance, the graph below corresponds to the bipartite graph from the example in your question:



Now, your problem is reduced to the Minimum Vertex Cover problem on the graph $G$, defined above, so you'll be able to use known algorithms to find minimum vertex cover in your SET1 only.

This graph $G$ doesn't have any special structure, which could be used to find its minimum vertex cover more effectively than in general case. Also, any graph can be transformed to your bipartite graph form by splitting each edge by a new vertex. So, it means that your problem is equivalent to the minimum vertex cover problem, which is NP-complete - thanks to @narekBojikian for mentioning that in his answer.