def add_arc(self, src, dst, char):
        """
        This function adds a new arc in a SFA state
        Args:
            src (int): The source state identifier
            dst (int): The destination state identifier
            char (str): The transition symbol
        Returns:
            None
        """
        assert type(src) == type(int()) and type(dst) == type(int()), \
            "State type should be integer."
        while src >= len(self.states) or dst >= len(self.states):
            self.add_state()
        self.states[src].arcs.append(SFAArc(src, dst, char))