Geometric construction of bases of H2(Ω,∂Ω,Z)
We present an efficient algorithm for the construction of a basis of H2(Ω,∂Ω;Z) via the Poincaré--Lefschetz duality theorem. Denoting by g the first Betti number of Ω the idea is to find, first g different 1-boundaries of Ω with supports contained in ∂Ω whose homology classes in R3∖Ω form a basis of H1(R3∖Ω;Z), and then to construct in Ω a homological Seifert surface of each one of these 1-boundaries. The Poincaré--Lefschetz duality theorem ensures that the relative homology classes of these homological Seifert surfaces in Ω modulo ∂Ω form a basis of H2(Ω,∂Ω;Z). We devise a simply procedure for the construction of the required set of 1-boundaries of Ω that, combined with a fast algorithm for the construction of homological Seifert surfaces, allows the efficient computation of a basis of H2(Ω,∂Ω;Z) via this very natural geometrical approach. Some numerical experiments show the efficiency of the method and its performance comparing with other algorithms.