До чего убогий API у этой штуки...
Тебе надо написать кастомный LiveData, который будет ходить в поиск, а также использовать switchMap вместо map.
Вот тут доступно описано.
И не надо использовать асинктаски для того, чтобы ходить в сеть...
Примерно так будет
n = 1
y = 0
Цикл по всем простым множителям:
xi - текущий простой множитель
yi - количество раз, которое xi встречается
n = n*xi
y = max(y, yi)
Конец цикла
Итого ответ - нет, так делать не надо, фрагмент должен быть независим от активити. Если нужно закрывать приложение при закрытии последнего фрагмента, надо правильно добавлять фрагменты в бекстек.
Не читал всю портянку, но. Очевидно, что dbManager во фрагменте даже не создаётся. Все поля с присвоением создаются сразу при создании объекта, и в этот момент, конечно же, context == null. Читай про жизненный цикл фрагментов. Нужно отложить создание менеджера, например, использовав by lazy, или lateinit var.
forEachIndexed это extension, сахар для for(x in list). А это уже синтаксический сахар для while(iterator.hasNext()). Дальше надо разбираться с итератором, и там возможны варианты. Самый плохой из них - это ConcurrentModificationException, то есть изменение списка, по которому сейчас происходит итерация.
Ответ - так делать вообще не надо.
По коду выглядит так, будто тебе надо просто использовать напрямую iterator() и в нужный момент вызывать у него remove(). А index здесь вообще лишний.
Во второй строке ты говоришь class B extends A {} ты говоришь "В наследник А".
В третьей строке class C<T extends B> {}ты говоришь "класс С параметризован типом В или его наследником".
В четвертой строке class D extends C<A> {} ты говоришь "класс D - наследник С, параметризованного типом А".
Найди противоречие(поиск противоречий это где-то там во 2-3 классе проходят, к программированию и джаве отношения не имеет).
Если g(x) = 5(константа), то f(g(x)) = f(5) - это тоже константа, покуда f(x) - функция одного аргумента. Очевидно, производная f(g(x))' = 0 в таком случае.
Учить язык, на котором пишешь. Ну и документацию читать.
Метод возвращает Serializable, как, по-твоему, оно должно "распознаваться"? Нужно кастовать к твоему типу. as Note.