Why Pagination is not working on Category.php

When you go to the second page of the “General Lab”, WordPress does a query for posts in that category and finds none. If WordPress finds no posts, it will display the 404 template. The only case is when you are on the first page of a taxonomy (like a category): then it still loads the specific template, allowing you to display a message like “No posts in this category”. I explained this further in an answer to a similar question.

You should thus not do the query in the template, since it will be too late. Instead, hook into the pre_get_posts action:

add_action( 'pre_get_posts', 'wpse16387_pre_get_posts' );
function wpse16387_pre_get_posts( &$wp_query )
{
    if ( 'general-lab' == $wp_query->get( 'category' ) ) {
        $wp_query->set( 'category', 'life-sciences' );
        $GLOBALS['wpse16387_original_category'] = 'general-lab';
    }
}

Now it will load the life-sciences posts with the main query, and paging will work. You don’t need the extra query in your template. You can detect you swapped the categories by reading the global $wpse16387_original_category variable.